Inheritance diagram for COMObject:
You probably won't need to use this object e * directly. Note that by templating now, we can eliminate one intermediary class. This may not be desirable in some cases-- if this turns out to be the case, we can split it out again.
Definition at line 55 of file COMObject.H.
Public Member Functions | |
COMObject (const std::string &name) | |
virtual | ~COMObject () |
virtual void | activateSupplier ()=0 |
Activates this object as a supplier. | |
virtual void | activateConsumer ()=0 |
Activates this object as a consumer. | |
virtual void | runUpdate (const bool &publishData, const bool &publishInfo)=0 |
This function will perform all work necessary to update the incoming data, and send out any outgoing data. | |
virtual void | disconnect ()=0 |
Cleans up the connection. | |
void | setAcceptAny (const bool &val) |
Sets this to be a generic consumer, receiving all data of this interface type. | |
virtual void | setQueueMode (const bool &val)=0 |
Turns on queue mode: This queues up the events instead of overwriting the old data. | |
virtual void | setStreamName (const std::string &name)=0 |
Sets the name of the data stream we should be listening to (sets the supplier which is sending us data). | |
virtual void | setGlobalName (const std::string &name)=0 |
Sets the global name of this object. | |
void | setAutoPing (const bool &val) |
Does what it says. | |
void | doPing () |
void | setStaging (DataType *staging_) |
void | setInfo (InfoType *info) |
void | setRequests (InfoType *requests) |
void | setDataVector (std::queue< DataType > *dataVector) |
void | setInfoVector (std::queue< InfoType > *infoVector) |
void | setRequestVector (std::queue< InfoType > *requestVector) |
bool | isSupplier () |
bool | newInfo () |
bool | newData () |
void | resetInfo () |
void | resetData () |
Protected Member Functions | |
COMObject () | |
COMObject (const COMObject< InfoType, DataType > &) | |
Protected Attributes | |
std::string | m_streamname |
std::string | m_globalName |
bool | m_newData |
bool | m_newInfo |
bool | m_doAutoPing |
bool | m_doPing |
bool | m_supplier |
bool | m_queue |
bool | m_acceptAny |
InfoType * | m_incoming |
InfoType * | m_outgoing |
DataType * | m_data |
std::queue< InfoType > * | m_incomingVector |
std::queue< InfoType > * | m_outgoingVector |
std::queue< DataType > * | m_dataVector |
InfoType | m_lastInfoIn |
InfoType | m_lastInfoOut |
DataType | m_lastData |
COMObject | ( | const std::string & | name | ) | [inline] |
Definition at line 57 of file COMObject.H.
virtual ~COMObject | ( | ) | [inline, virtual] |
Definition at line 67 of file COMObject.H.
COMObject | ( | ) | [inline, protected] |
virtual void activateSupplier | ( | ) | [pure virtual] |
Activates this object as a supplier.
virtual void activateConsumer | ( | ) | [pure virtual] |
Activates this object as a consumer.
virtual void runUpdate | ( | const bool & | publishData, | |
const bool & | publishInfo | |||
) | [pure virtual] |
This function will perform all work necessary to update the incoming data, and send out any outgoing data.
virtual void disconnect | ( | ) | [pure virtual] |
Cleans up the connection.
void setAcceptAny | ( | const bool & | val | ) | [inline] |
Sets this to be a generic consumer, receiving all data of this interface type.
Definition at line 95 of file COMObject.H.
virtual void setQueueMode | ( | const bool & | val | ) | [pure virtual] |
Turns on queue mode: This queues up the events instead of overwriting the old data.
Important if all events need to be received. TODO: Add a limit to the size of the queue
virtual void setStreamName | ( | const std::string & | name | ) | [pure virtual] |
Sets the name of the data stream we should be listening to (sets the supplier which is sending us data).
virtual void setGlobalName | ( | const std::string & | name | ) | [pure virtual] |
Sets the global name of this object.
If a supplier, the global name is the same as the stream name. Global names must be unique!
void setAutoPing | ( | const bool & | val | ) | [inline] |
void doPing | ( | ) | [inline] |
Definition at line 133 of file COMObject.H.
void setStaging | ( | DataType * | staging_ | ) | [inline] |
Definition at line 135 of file COMObject.H.
void setInfo | ( | InfoType * | info | ) | [inline] |
Definition at line 136 of file COMObject.H.
void setRequests | ( | InfoType * | requests | ) | [inline] |
Definition at line 137 of file COMObject.H.
void setDataVector | ( | std::queue< DataType > * | dataVector | ) | [inline] |
Definition at line 139 of file COMObject.H.
void setInfoVector | ( | std::queue< InfoType > * | infoVector | ) | [inline] |
Definition at line 140 of file COMObject.H.
void setRequestVector | ( | std::queue< InfoType > * | requestVector | ) | [inline] |
Definition at line 141 of file COMObject.H.
bool isSupplier | ( | ) | [inline] |
Definition at line 143 of file COMObject.H.
bool newInfo | ( | ) | [inline] |
Definition at line 144 of file COMObject.H.
bool newData | ( | ) | [inline] |
Definition at line 145 of file COMObject.H.
void resetInfo | ( | ) | [inline] |
Definition at line 146 of file COMObject.H.
void resetData | ( | ) | [inline] |
Definition at line 147 of file COMObject.H.
std::string m_streamname [protected] |
Definition at line 153 of file COMObject.H.
std::string m_globalName [protected] |
Definition at line 154 of file COMObject.H.
bool m_newData [protected] |
bool m_newInfo [protected] |
bool m_doAutoPing [protected] |
Definition at line 160 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setAutoPing().
bool m_doPing [protected] |
Definition at line 163 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::doPing().
bool m_supplier [protected] |
Definition at line 166 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::COMObject(), and COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::isSupplier().
bool m_queue [protected] |
Definition at line 169 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::COMObject().
bool m_acceptAny [protected] |
Definition at line 172 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setAcceptAny().
InfoType* m_incoming [protected] |
Definition at line 174 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setInfo().
InfoType* m_outgoing [protected] |
Definition at line 175 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setRequests().
DataType* m_data [protected] |
Definition at line 176 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setStaging().
std::queue<InfoType>* m_incomingVector [protected] |
Definition at line 178 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setInfoVector().
std::queue<InfoType>* m_outgoingVector [protected] |
Definition at line 179 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setRequestVector().
std::queue<DataType>* m_dataVector [protected] |
Definition at line 180 of file COMObject.H.
Referenced by COMObject< WURDE::PTUnitInfoStruct, WURDE::PTUnitDataStruct >::setDataVector().
InfoType m_lastInfoIn [protected] |
Definition at line 182 of file COMObject.H.
InfoType m_lastInfoOut [protected] |
Definition at line 183 of file COMObject.H.
DataType m_lastData [protected] |
Definition at line 184 of file COMObject.H.