m2etis
0.4
|
#include <BasePartition.h>
Public Types | |
typedef boost::shared_ptr< EventType > | PayloadPtr |
Public Member Functions | |
BasePartition () | |
virtual | ~BasePartition () |
virtual void | createRendezvousPartition (const typename NetworkType::Key &rendezvous)=0 |
creates a base partition for the RP (dynamic) More... | |
virtual std::vector< int > | getTreeNames ()=0 |
returns amount of partitions this strategy contains (static & dynamic) More... | |
virtual std::vector< int >::size_type | getPublishTree (const PayloadPtr message, const typename NetworkType::Key &self)=0 |
returns the tree index the given node with the given payload should publish on (static & dynamic) More... | |
virtual std::vector< unsigned int > | getSubscribeTrees (boost::shared_ptr< filter::FilterExp< EventType >> dynamic_filter)=0 |
returns the tree indices of all trees matching the predicate to subscribe on (static & dynamic) More... | |
virtual boost::shared_ptr< filter::FilterExp< EventType > > | getPredicate (size_t id)=0 |
returns the predicate for the given partition id (dynamic) More... | |
virtual bool | createPartition (const typename NetworkType::Key &root)=0 |
can create a new partition for this channel if a new node (root) joins, return true, if a new partition was created, otherwise false (dynamic) More... | |
virtual void | addPartition (boost::shared_ptr< filter::FilterExp< EventType > > predicate, const typename NetworkType::Key &root)=0 |
adds a new partition to the strategy at nodes not being RP (dynamic) More... | |
virtual void | removePartition (size_t id)=0 |
removes the partition with the given id (dynamic) More... | |
virtual void | changePredicate (size_t id, boost::shared_ptr< filter::FilterExp< EventType >> predicates)=0 |
changes the filter predicate for the partition with the given id (dynamic) More... | |
virtual void | changeRoot (size_t id, typename NetworkType::Key &root)=0 |
virtual std::string | toString () |
Definition at line 32 of file BasePartition.h.
typedef boost::shared_ptr<EventType> m2etis::pubsub::partition::BasePartition< NetworkType, EventType >::PayloadPtr |
Definition at line 34 of file BasePartition.h.
|
inline |
Definition at line 36 of file BasePartition.h.
|
inlinevirtual |
Definition at line 39 of file BasePartition.h.
|
pure virtual |
adds a new partition to the strategy at nodes not being RP (dynamic)
|
pure virtual |
changes the filter predicate for the partition with the given id (dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
can create a new partition for this channel if a new node (root) joins, return true, if a new partition was created, otherwise false (dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
creates a base partition for the RP (dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::NullPartition< NetworkType, EventType >, and m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >.
|
pure virtual |
returns the predicate for the given partition id (dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
returns the tree index the given node with the given payload should publish on (static & dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
returns the tree indices of all trees matching the predicate to subscribe on (static & dynamic)
Implemented in m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
returns amount of partitions this strategy contains (static & dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
pure virtual |
removes the partition with the given id (dynamic)
Implemented in m2etis::pubsub::partition::BruteForcePartition< NetworkType, EventType >, m2etis::pubsub::partition::BruteForcePartition< EventType >, m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >, and m2etis::pubsub::partition::NullPartition< NetworkType, EventType >.
|
inlinevirtual |
Reimplemented in m2etis::pubsub::partition::DirectBroadcastPartition< NetworkType, EventType >.
Definition at line 88 of file BasePartition.h.