61 template <
class DataType>
    66       data.tm.sec  = tm.
sec();
    67       data.tm.nsec = tm.
usec() * 1000;
   107   template <
class DataType>
   137 #if defined(__GNUC__) && (__GNUC__ <= 3 && __GNUC_MINOR__ <= 3)    138       : 
OutPortBase(name, ::CORBA_Util::toRepositoryIdOfStruct<DataType>()),
   140       : 
OutPortBase(name, ::CORBA_Util::toRepositoryId<DataType>()),
   143       m_value(value), m_onWrite(0), m_onWriteConvert(0),
   144       m_directNewData(
false), m_directValue(value)
   219       if (m_onWrite != NULL)
   227       std::vector<const char *> disconnect_ids;
   232         if (!(conn_size > 0)) { 
return false; }
   234         m_status.resize(conn_size);
   236         for (
size_t i(0), len(conn_size); i < len; ++i)
   242                 if (m_onWriteConvert != NULL)
   244                     RTC_DEBUG((
"m_connectors.OnWriteConvert called"));
   245                     ret = 
m_connectors[i]->write(((*m_onWriteConvert)(value)));
   249                     RTC_DEBUG((
"m_connectors.write called"));
   255                 Guard guard(m_valueMutex);
   256                 if (m_onWriteConvert != NULL)
   258                     RTC_DEBUG((
"m_connectors.OnWriteConvert called"));
   259                     m_directValue = ((*m_onWriteConvert)(value));
   263                     m_directValue = value;
   265                 m_directNewData = 
true;
   270             if (ret == 
PORT_OK) { 
continue; }
   277                 RTC_WARN((
"connection_lost id: %s", 
id));
   281                     (*m_onConnectionLost)(prof);
   283                 disconnect_ids.push_back(
id);
   315       return write(m_value);
   382       return m_status[index];
   450       m_onWrite = on_write;
   491       m_onWriteConvert = on_wconvert;
   510     virtual void read(DataType& data)
   512         Guard guard(m_valueMutex);
   513         m_directNewData = 
false;
   514         data = m_directValue;
   518         return !m_directNewData;
   522         return m_directNewData;
   526     std::string m_typename;
   558     CORBA::Long m_propValueIndex;
   561     bool m_directNewData;
   562     DataType m_directValue;
   568 #endif // RTC_OUTPORT_H void addConnectorDataListener(ConnectorDataListenerType listener_type, ConnectorDataListener *listener, bool autoclean=true)
Adding BufferDataListener type listener. 
 
std::vector< OutPortConnector * > m_connectors
Connection list. 
Definition: OutPortBase.h:1064
 
#define RTC_TRACE(fmt)
Trace level log output macro. 
Definition: SystemLogger.h:588
 
long int sec() const 
Get value of second time scale. 
Definition: TimeValue.h:110
 
void setOnWriteConvert(OnWriteConvert< DataType > *on_wconvert)
Set OnWriteConvert callback. 
Definition: OutPort.h:489
 
Data convert callback abstract class on write() 
Definition: PortCallback.h:258
 
Mutex class. 
Definition: Mutex.h:40
 
coil::Mutex m_connectorsMutex
Definition: PortBase.h:2110
 
virtual void read(DataType &data)
Definition: OutPort.h:510
 
virtual ~OutPort(void)
Destructor. 
Definition: OutPort.h:170
 
Definition: Timestamp.h:26
 
virtual bool isNew()
Definition: OutPort.h:520
 
Periodic time measurement class. 
 
bool write()
Write data. 
Definition: OutPort.h:313
 
DataPortStatusList getStatusList()
Getting specified connector's writing status list. 
Definition: OutPort.h:414
 
Definition: ConnectorListener.h:140
 
Definition: DataPortStatus.h:157
 
virtual bool isEmpty()
Definition: OutPort.h:516
 
TimeValue class. 
Definition: TimeValue.h:40
 
#define RTC_WARN(fmt)
Warning log output macro. 
Definition: SystemLogger.h:522
 
std::vector< DataPortStatus::Enum > DataPortStatusList
Definition: DataPortStatus.h:206
 
int gettimeofday(struct timeval *tv, struct timezone *tz)
Get the time and timezone. 
Definition: Time.h:137
 
Definition: ConnectorListener.h:145
 
#define RTC_DEBUG(fmt)
Debug level log output macro. 
Definition: SystemLogger.h:566
 
bool operator<<(DataType &value)
Write data. 
Definition: OutPort.h:343
 
Definition: DirectOutPortBase.h:48
 
Callback abstract class on write() 
Definition: PortCallback.h:192
 
OutPortBase(const char *name, const char *data_type)
Constructor. 
 
Output base class. 
Definition: OutPortBase.h:235
 
DirectPortBase * m_directport
Definition: PortBase.h:2235
 
Definition: DataPortStatus.h:145
 
virtual ReturnCode_t disconnect(const char *connector_id)
[CORBA interface] Disconnect the Port 
 
void setTimestamp(DataType &data)
Setting timestamp to data. 
Definition: OutPort.h:62
 
DataPortStatus::Enum getStatus(int index)
Getting specified connector's writing status. 
Definition: OutPort.h:380
 
OutPort template class. 
Definition: OutPort.h:108
 
OutPort(const char *name, DataType &value)
Constructor. 
Definition: OutPort.h:136
 
virtual bool write(DataType &value)
Write data. 
Definition: OutPort.h:215
 
void setOnWrite(OnWrite< DataType > *on_write)
Set OnWrite callback. 
Definition: OutPort.h:448
 
TimeMeasure class. 
Definition: TimeMeasure.h:49
 
ConnectionCallback * m_onConnectionLost
Callback functor objects. 
Definition: PortBase.h:2218
 
Timestamp listener class. 
 
long int usec() const 
Get value of micro second time scale. 
Definition: TimeValue.h:131
 
Enum
DataPortStatus return codes. 
Definition: DataPortStatus.h:143
 
ConnectorProfile findConnProfile(const char *id)
Find ConnectorProfile with id. 
 
Functor for_each(CorbaSequence &seq, Functor f)
Apply the functor to all CORBA sequence elements. 
Definition: CORBA_SeqUtil.h:98