00001 00010 /********************************************************************** 00011 *< 00012 CREATED BY: Oleg Bayborodin 00013 00014 HISTORY: created 10-23-01 00015 00016 *> Copyright (c) 2001, All Rights Reserved. 00017 **********************************************************************/ 00018 00019 #pragma once 00020 00021 #include "PFExport.h" 00022 #include "PFSimpleAction.h" 00023 #include "IPFOperator.h" 00024 #include "..\iparamb2.h" 00025 00026 class PFSimpleOperator: public PFSimpleAction, 00027 public IPFOperator 00028 { 00029 public: 00030 // constructor: inherited as a base class constructor 00031 PFSimpleOperator() { _activeIcon() = _inactiveIcon() = NULL; } 00032 PFExport virtual ~PFSimpleOperator(); 00033 00034 // From InterfaceServer 00035 PFExport virtual BaseInterface* GetInterface(Interface_ID id); 00036 00037 // --- These methods MUST be implemented by the derived class --- // 00038 // --- These methods have a default virtual implementation to --- // 00039 // --- ease PFExport implementation of Clone(...) method --- // 00040 00041 // From IPFOperator interface 00042 #pragma warning(push) 00043 #pragma warning(disable:4100) 00044 virtual bool Proceed(IObject* pCont, PreciseTimeValue timeStart, PreciseTimeValue& timeEnd, Object* pSystem, INode* node, IObject* integrator) { return false; } 00045 #pragma warning(pop) 00046 protected: 00047 // const access to class members 00048 HBITMAP activeIcon() const { return m_activeIcon; } 00049 HBITMAP inactiveIcon() const { return m_inactiveIcon; } 00050 00051 // access to class members 00052 HBITMAP& _activeIcon() { return m_activeIcon; } 00053 HBITMAP& _inactiveIcon() { return m_inactiveIcon; } 00054 00055 private: 00056 HBITMAP m_activeIcon; 00057 HBITMAP m_inactiveIcon; 00058 }; 00059