00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 using namespace std;
00020
00021 #include "timeblock.h"
00022
00023 TimeBlock::TimeBlock(int start, int finish, Type type)
00024 : mStart(start), mFinish(finish), mType(type)
00025 {
00026 }
00027
00028 TimeBlock::~TimeBlock()
00029 {
00030 }
00031
00032
00033 bool TimeBlock::overlap(int start, int finish) const
00034 {
00035 if ( start <= mStart && mStart <= finish )
00036 return true;
00037 if ( start <= mFinish && mFinish <= finish )
00038 return true;
00039 if ( mStart <= start && start <= mFinish )
00040 return true;
00041 if ( mStart <= finish && finish <= mFinish )
00042 return true;
00043 return false;
00044 }
00045
00046
00047 TaskTimeBlock::TaskTimeBlock(RESOURCE *r,
00048 int start,
00049 int finish,
00050 Type type)
00051 : TimeBlock(start, finish, type), mResource(r)
00052 {
00053 }
00054
00055
00056 ResourceTimeBlock::ResourceTimeBlock(TASK *t,
00057 int start,
00058 int finish,
00059 Type type)
00060 : TimeBlock(start, finish, type), mTask(t)
00061 {
00062 }
00063