m2etis
0.4
|
Implements the Deterministic Merge Order Strategy. More...
#include <DetMergeOrder.h>
Public Types | |
typedef message::DetMergeOrderInfo< Config > | OrderInfoType |
Public Member Functions | |
DetMergeOrder (PubSubSystemEnvironment *pssi, bool b) | |
Constructor. More... | |
virtual | ~DetMergeOrder () |
Destructor. More... | |
bool | hasPending () |
returns whether there are messages waiting More... | |
bool | configureOrderInfo (uint64_t id, const message::ActionType mtype, typename message::OrderInfo::Ptr ptr, const typename NetworkType::Key &) |
configure Infos This functions sets all necessary information for this message More... | |
bool | processControlPayload (typename message::OrderInfo::Ptr, const typename NetworkType::Key &) |
process Control Messages They are only used to sync More... | |
void | processSubscribePayload (typename message::OrderInfo::Ptr, const typename NetworkType::Key &) |
this strategie doesn't care about subscribes More... | |
void | processPublishPayload (typename message::OrderInfo::Ptr, const typename NetworkType::Key &) |
this strategie doesn't care about publish payloads here More... | |
void | processNotifyPayload (typename message::OrderInfo::Ptr, const typename NetworkType::Key &) |
called for every NotifyMsg that arrived More... | |
void | otherOrders (const std::vector< DetMergeOrder * > &) |
this strategie doesn't need the other trees More... | |
void | receive (uint64_t id, typename message::OrderInfo::Ptr ptr, const typename NetworkType::Key &) |
called when a message is received This function updates the internal state of this strategie and pushes the msg in a queue More... | |
bool | updatePhyClock () |
void | notifyRemovedMessage (typename message::OrderInfo::Ptr, const typename NetworkType::Key &) |
notified when message dropped by filter or validity strategy More... | |
Public Member Functions inherited from m2etis::pubsub::order::BaseOrder< NetworkType > | |
BaseOrder (PubSubSystemEnvironment *pssi, bool isRoot) | |
virtual | ~BaseOrder () |
void | configureCallback (const boost::function< void(uint64_t, msgProcess)> &func) |
used to set the function to be called when a message should be send to the next processing stage call this function with the id given in receive() to deliver the appropriate message More... | |
void | setHn (const typename NetworkType::Key &self) |
sets the hostname of the current node More... | |
void | configureSendCallback (const boost::function< void(message::OrderInfo::Ptr, const typename NetworkType::Key &, ControlTarget)> &func) |
with this function, new messages can be sent directly to nodes More... | |
void | setRoot (bool b) |
sets whether this node is the root node. Several strategies need this to determind the sequencer More... | |
Additional Inherited Members | |
Protected Attributes inherited from m2etis::pubsub::order::BaseOrder< NetworkType > | |
PubSubSystemEnvironment * | pssi_ |
bool | isRoot_ |
true if this node is the root node More... | |
NetworkType::Key | hn |
hostname of the node More... | |
boost::function< void(uint64_t, msgProcess)> | function_ |
stores the function to be called for delivering More... | |
boost::function< void(message::OrderInfo::Ptr, const typename NetworkType::Key &, ControlTarget)> | sendMsg_ |
stores the function to send new messages This function will send a newly created control message containing the given OrderStruct to the specified sender. The Tree ensures that this message will be sent to the specified receiver and will not be processed by any other strategie. More... | |
Implements the Deterministic Merge Order Strategy.
Definition at line 41 of file DetMergeOrder.h.
typedef message::DetMergeOrderInfo<Config> m2etis::pubsub::order::DetMergeOrder< NetworkType, Config >::OrderInfoType |
Definition at line 54 of file DetMergeOrder.h.
|
inline |
Constructor.
Definition at line 59 of file DetMergeOrder.h.
|
inlinevirtual |
Destructor.
Definition at line 67 of file DetMergeOrder.h.
|
inlinevirtual |
configure Infos This functions sets all necessary information for this message
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 82 of file DetMergeOrder.h.
|
inlinevirtual |
returns whether there are messages waiting
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 74 of file DetMergeOrder.h.
|
inlinevirtual |
notified when message dropped by filter or validity strategy
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 186 of file DetMergeOrder.h.
|
inline |
this strategie doesn't need the other trees
Definition at line 138 of file DetMergeOrder.h.
|
inlinevirtual |
process Control Messages They are only used to sync
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 112 of file DetMergeOrder.h.
|
inlinevirtual |
called for every NotifyMsg that arrived
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 132 of file DetMergeOrder.h.
|
inlinevirtual |
this strategie doesn't care about publish payloads here
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 126 of file DetMergeOrder.h.
|
inlinevirtual |
this strategie doesn't care about subscribes
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 120 of file DetMergeOrder.h.
|
inlinevirtual |
called when a message is received This function updates the internal state of this strategie and pushes the msg in a queue
Implements m2etis::pubsub::order::BaseOrder< NetworkType >.
Definition at line 145 of file DetMergeOrder.h.
|
inline |
Definition at line 170 of file DetMergeOrder.h.