22 #ifndef __M2ETIS_PUBSUB_PARTITION_NULLPARTITION_H__ 
   23 #define __M2ETIS_PUBSUB_PARTITION_NULLPARTITION_H__ 
   27 #include "boost/assign/list_of.hpp" 
   33         template<
typename NetworkType, 
typename EventType>
 
   53                         std::vector<int> ret(1);
 
   57                 std::vector<int>::size_type 
getPublishTree(
const PayloadPtr, 
const typename NetworkType::Key &) {
 
   62                         std::vector<unsigned int> overlapping_trees;
 
   63                         overlapping_trees.push_back(
ALL);
 
   64                         return overlapping_trees;
 
   67                 boost::shared_ptr<filter::FilterExp<EventType>> 
getPredicate(
size_t) {
 
   68                         return boost::shared_ptr<filter::FilterExp<EventType>>();
 
static const bool DYNAMIC_PARTITION
std::vector< unsigned int > getSubscribeTrees(boost::shared_ptr< filter::FilterExp< EventType >>)
returns the tree indices of all trees matching the predicate to subscribe on (static & dynamic) ...
boost::shared_ptr< filter::FilterExp< EventType > > getPredicate(size_t)
returns the predicate for the given partition id (dynamic) 
void createRendezvousPartition(const typename NetworkType::Key &)
creates a base partition for the RP (dynamic) 
void changeRoot(size_t, typename NetworkType::Key &)
bool createPartition(const typename NetworkType::Key &)
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) 
std::vector< int > getTreeNames()
returns amount of partitions this strategy contains (static & dynamic) 
std::vector< int >::size_type getPublishTree(const PayloadPtr, const typename NetworkType::Key &)
returns the tree index the given node with the given payload should publish on (static & dynamic) ...
boost::shared_ptr< EventType > PayloadPtr
void addPartition(boost::shared_ptr< filter::FilterExp< EventType >>, const typename NetworkType::Key &)
void removePartition(size_t)
removes the partition with the given id (dynamic) 
void changePredicate(size_t, boost::shared_ptr< filter::FilterExp< EventType >>)
changes the filter predicate for the partition with the given id (dynamic)