m2etis  0.4
m2etis::pubsub::Channel< ChannelType, NetworkType, EventType > Class Template Reference

Channel. More...

#include <Channel.h>

Inheritance diagram for m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >:
Inheritance graph

Public Member Functions

 Channel (const ChannelName topic_name, const std::string &ip, uint16_t port, const std::string &rendezvousIP, uint16_t known_hostport, PubSubSystemEnvironment *pssi, const std::vector< std::string > &rootList)
 Constructor. More...
 
virtual ~Channel ()
 
std::string getSelf () const
 
ChannelName getChannel () const
 Gets a identification of the channel. More...
 
void subscribe (BasicDeliverCallbackInterface< EventType > &callback, boost::shared_ptr< filter::FilterExp< EventType > > predicate)
 subscribes to the channel More...
 
void unsubscribe (boost::shared_ptr< filter::FilterExp< EventType >> predicate) override
 
void unsubscribe ()
 
void publish (const typename message::M2Message< EventType >::Ptr msg)
 publishes a message on the channel More...
 
message::M2Message< EventType >::Ptr createMessage () const
 
message::M2Message< EventType >::Ptr createMessage (const EventType &payload) const
 
bool parseMessages ()
 
void deliver (typename message::NetworkMessage< NetworkType >::Ptr msg)
 Channel receives messages from network in here, used for dynamic partitions. More...
 
- Public Member Functions inherited from m2etis::pubsub::BasicChannelInterface< EventType >
virtual ~BasicChannelInterface ()
 Destructor. More...
 
virtual void unsubscribe (boost::shared_ptr< filter::FilterExp< EventType > >)=0
 deregisters single filter More...
 
- Public Member Functions inherited from m2etis::pubsub::ChannelEventInterface
virtual ~ChannelEventInterface ()
 Destructor. More...
 

Detailed Description

template<class ChannelType, class NetworkType, class EventType>
class m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >

Channel.

Long Desc

Definition at line 66 of file Channel.h.

Constructor & Destructor Documentation

template<class ChannelType , class NetworkType , class EventType >
m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::Channel ( const ChannelName  topic_name,
const std::string &  ip,
uint16_t  port,
const std::string &  rendezvousIP,
uint16_t  known_hostport,
PubSubSystemEnvironment pssi,
const std::vector< std::string > &  rootList 
)
inline

Constructor.

Definition at line 92 of file Channel.h.

template<class ChannelType , class NetworkType , class EventType >
virtual m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::~Channel ( )
inlinevirtual

Definition at line 122 of file Channel.h.

Here is the call graph for this function:

Member Function Documentation

template<class ChannelType , class NetworkType , class EventType >
message::M2Message<EventType>::Ptr m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::createMessage ( ) const
inlinevirtual

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 177 of file Channel.h.

Here is the caller graph for this function:

template<class ChannelType , class NetworkType , class EventType >
message::M2Message<EventType>::Ptr m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::createMessage ( const EventType &  payload) const
inlinevirtual

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 181 of file Channel.h.

Here is the call graph for this function:

template<class ChannelType , class NetworkType , class EventType >
void m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::deliver ( typename message::NetworkMessage< NetworkType >::Ptr  msg)
inline

Channel receives messages from network in here, used for dynamic partitions.

Definition at line 240 of file Channel.h.

Here is the call graph for this function:

template<class ChannelType , class NetworkType , class EventType >
ChannelName m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::getChannel ( ) const
inlinevirtual

Gets a identification of the channel.

Returns
Returns an enum identifying the channel

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 156 of file Channel.h.

template<class ChannelType , class NetworkType , class EventType >
std::string m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::getSelf ( ) const
inlinevirtual

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 150 of file Channel.h.

template<class ChannelType , class NetworkType , class EventType >
bool m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::parseMessages ( )
inline

Definition at line 195 of file Channel.h.

Here is the call graph for this function:

template<class ChannelType , class NetworkType , class EventType >
void m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::publish ( const typename message::M2Message< EventType >::Ptr  msg)
inlinevirtual

publishes a message on the channel

Parameters
[in]msgpublished message on the channel

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 173 of file Channel.h.

Here is the call graph for this function:

template<class ChannelType , class NetworkType , class EventType >
void m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::subscribe ( BasicDeliverCallbackInterface< EventType > &  callback,
boost::shared_ptr< filter::FilterExp< EventType > >   
)
inlinevirtual

subscribes to the channel

Parameters
[in]callbackcallback method
[in]predicatefilter

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 160 of file Channel.h.

Here is the call graph for this function:

Here is the caller graph for this function:

template<class ChannelType , class NetworkType , class EventType >
void m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::unsubscribe ( boost::shared_ptr< filter::FilterExp< EventType >>  predicate)
inlineoverride

Definition at line 165 of file Channel.h.

Here is the call graph for this function:

template<class ChannelType , class NetworkType , class EventType >
void m2etis::pubsub::Channel< ChannelType, NetworkType, EventType >::unsubscribe ( )
inlinevirtual

Implements m2etis::pubsub::BasicChannelInterface< EventType >.

Definition at line 169 of file Channel.h.


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