Public Member Functions |
|
| DiffusionRouting (u_int16_t port) |
|
void | run (bool wait_condition, long max_timeout) |
|
handle | subscribe (NRAttrVec *subscribe_attrs, NR::Callback *cb) |
|
int | unsubscribe (handle subscription_handle) |
|
handle | publish (NRAttrVec *publish_attrs) |
|
int | unpublish (handle publication_handle) |
|
int | send (handle publication_handle, NRAttrVec *send_attrs) |
|
int | sendRmst (handle publication_handle, NRAttrVec *send_attrs, int fragment_size) |
|
handle | addFilter (NRAttrVec *filter_attrs, u_int16_t priority, FilterCallback *cb) |
|
int | removeFilter (handle filter_handle) |
|
int | sendMessage (Message *msg, handle h, u_int16_t priority=FILTER_KEEP_PRIORITY) |
|
int | addToBlacklist (int32_t node) |
|
int | clearBlacklist () |
|
handle | addTimer (int timeout, TimerCallback *callback) |
|
handle | addTimer (int timeout, void *param, TimerCallbacks *cb) |
|
bool | removeTimer (handle hdl) |
|
void | doIt () |
|
void | doOne (long timeout=WAIT_FOREVER) |
|
int | interestTimeout (HandleEntry *handle_entry) |
|
int | filterKeepaliveTimeout (FilterEntry *filter_entry) |
Protected Member Functions |
|
void | recvPacket (DiffPacket pkt) |
|
void | recvMessage (Message *msg) |
|
void | sendMessageToDiffusion (Message *msg) |
|
void | sendPacketToDiffusion (DiffPacket pkt, int len, int dst) |
|
bool | processRmst (Message *msg) |
|
void | processMessage (Message *msg) |
|
void | processControlMessage (Message *msg) |
|
bool | checkSubscription (NRAttrVec *attrs) |
|
bool | checkPublication (NRAttrVec *attrs) |
|
bool | checkSend (NRAttrVec *attrs) |
|
bool | isPushData (NRAttrVec *attrs) |
|
HandleEntry * | removeHandle (handle my_handle, HandleList *hl) |
|
HandleEntry * | findHandle (handle my_handle, HandleList *hl) |
|
FilterEntry * | deleteFilter (handle my_handle) |
|
FilterEntry * | findFilter (handle my_handle) |
|
bool | hasScope (NRAttrVec *attrs) |
Protected Attributes |
|
Int2RecRmst | rec_rmst_map_ |
|
int | next_handle_ |
|
HandleList | pub_list_ |
|
HandleList | sub_list_ |
|
FilterList | filter_list_ |
|
pthread_mutex_t * | dr_mtx_ |
|
TimerManager * | timers_manager_ |
|
DeviceList | in_devices_ |
|
DeviceList | local_out_devices_ |
|
u_int16_t | diffusion_port_ |
|
int | pkt_count_ |
|
int | random_id_ |
|
u_int16_t | agent_id_ |