00001 #if defined (_MSC_VER) && (_MSC_VER >= 1000)
00002 #pragma once
00003 #endif
00004 #ifndef _INC_SCHEDULEDRIVEN
00005 #define _INC_SCHEDULEDRIVEN
00006 #include "ControlCenter.h"
00007 #include "stdafx.h"
00008
00009 namespace mial{
00010
00011 #define MAXCOMMANDLENGTH 200
00012
00014
00022 template<class Type, int nDims> class Ctrl_ScheduleDriven
00023 : public ControlCenter<Type,nDims>
00024 {
00025 public:
00026
00027 typedef Ctrl_ScheduleDriven Self;
00028 typedef itk::SmartPointer<Self> Pointer;
00029 typedef itk::SmartPointer<const Self> ConstPointer;
00030 typedef itk::WeakPointer<const Self> ConstWeakPointer;
00031 itkNewMacro(Self);
00032
00034 virtual bool decideNextBehavior();
00035
00037
00040 virtual bool setSchedule(std::string n){ scName = n; return false;};
00041
00043 std::stringstream behaviorToRunStream;
00044
00045 private:
00047 std::string scName;
00049 bool setup;
00051 std::ifstream in;
00052
00053 protected:
00055 Ctrl_ScheduleDriven();
00056 };
00057 }
00058 #include "Ctrl_ScheduleDriven.cxx"
00059 #endif