![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2003 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: outputPort.h,v $ $Revision: 1.9 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef DtOutputPort_H_ 00015 #define DtOutputPort_H_ 00016 00017 #include <vlutil/vlString.h> 00018 #include <vlutil/vlList.h> 00019 #include "vrfobjcore/vrfobjcoreDefines.h" 00020 00021 class DtPortConnection; 00022 class DtPortData; 00023 00046 class DT_DLL_vrfobjcore DtOutputPort 00047 { 00048 public: 00051 DtOutputPort(const DtString& portName); 00052 00054 virtual ~DtOutputPort(); 00055 00056 private: 00058 DtOutputPort(); 00060 DtOutputPort(const DtOutputPort&); 00062 DtOutputPort& operator=(const DtOutputPort&); 00063 00064 public: 00065 00068 virtual bool init(); 00069 00071 virtual const DtString& name() const; 00072 00076 virtual const DtString type() const = 0; 00077 00080 virtual void createPortData() = 0; 00081 00085 virtual DtPortData* data(); 00086 virtual const DtPortData* data() const; 00088 00090 virtual void sendData(); 00091 00093 virtual void addConnection(DtPortConnection* conn); 00095 virtual void removeConnection(DtPortConnection* conn); 00096 00100 virtual bool attemptToActivate(); 00101 00104 virtual bool canActivate() const; 00105 00108 virtual void deactivate(); 00109 00113 virtual void allowDeactivation(); 00114 00116 virtual bool active() const; 00117 00119 virtual const DtList* connectionList() const; 00120 00123 virtual void setConnectionPriority(int priority); 00124 00127 virtual bool enabled() const; 00128 virtual void setEnabled(bool flag); 00130 00131 protected: 00132 00133 DtString myName; 00134 bool myEnabled; 00135 00137 DtPortData * myData; 00138 00140 DtList myConnectionList; 00141 }; 00142 00143 #endif