Dataflow Runtime API  2.7.4.0
Public Types | Public Member Functions | Friends | List of all members
imt::base::lib::remoting::RemoteObjectIfc Class Referenceabstract

Classes that implement this interface provide a generic mechanism to exchange data with a remoting peer. More...

#include <Imt.Base.Lib.Remoting/RemoteObjectIfc.h>

Inheritance diagram for imt::base::lib::remoting::RemoteObjectIfc:
imt::base::core::serialization::SerializableIfc imt::base::lib::remoting::RemoteObjectAbs imt::base::bsp::simulator::remoting::RemoteObjectTemplate< ProtocolType, PROTOCOL_ID >

Public Types

enum  { UNDEFINED_ID = -1 }
 

Public Member Functions

virtual ~RemoteObjectIfc (void)
 Destructor.
 
virtual int32_t getUniqueId (void)=0
 Gets the unique id of this remote object. More...
 
virtual bool send (void)=0
 Sends this remote object. More...
 
virtual void onReceive (imt::base::core::serialization::Deserializer &deserializer)=0
 Will be called when data has been received. More...
 
virtual void attach (const int32_t uniqueId)=0
 Attaches this remote object to remoting service. More...
 
virtual void detach (void)=0
 Detaches this remote object from remoting service.
 
- Public Member Functions inherited from imt::base::core::serialization::SerializableIfc
virtual ~SerializableIfc (void)
 Destructor.
 
virtual void deserialize (Deserializer &deserializer)=0
 Deserialize this object from the given deserializer. More...
 
virtual void serialize (Serializer &serializer) const =0
 Serialize this object into the given serializer. More...
 

Friends

class RemotingSendService
 

Detailed Description

Classes that implement this interface provide a generic mechanism to exchange data with a remoting peer.

Each RemoteObjectIfc implementation has a unique id, that is inserted in the byte stream sent to the remoting peer, that allows to identify the responsible remote object on the other side. The data send / received is handled in the serialize and deserialize methods.

Member Function Documentation

◆ attach()

virtual void imt::base::lib::remoting::RemoteObjectIfc::attach ( const int32_t  uniqueId)
pure virtual

Attaches this remote object to remoting service.

When attaching this object, a unique id must be provided.

Parameters
uniqueIdA unique for this remote object

Implemented in imt::base::lib::remoting::RemoteObjectAbs.

◆ getUniqueId()

virtual int32_t imt::base::lib::remoting::RemoteObjectIfc::getUniqueId ( void  )
pure virtual

Gets the unique id of this remote object.

Returns
unique id of this remote object

Implemented in imt::base::lib::remoting::RemoteObjectAbs.

◆ onReceive()

virtual void imt::base::lib::remoting::RemoteObjectIfc::onReceive ( imt::base::core::serialization::Deserializer deserializer)
pure virtual

Will be called when data has been received.

Parameters
deserializerThe deserializer containing the data

Implemented in imt::base::lib::remoting::RemoteObjectAbs.

◆ send()

virtual bool imt::base::lib::remoting::RemoteObjectIfc::send ( void  )
pure virtual

Sends this remote object.

Returns
bool True if send succeeded, false otherwise

Implemented in imt::base::lib::remoting::RemoteObjectAbs.


The documentation for this class was generated from the following file: