#include <ECG_UDP_Sender.h>
static TAO_EC_Servant_Var < TAO_ECG_UDP_Sender > | create (CORBA::Boolean crc=0) |
Initialization and termination methods. | |
~TAO_ECG_UDP_Sender (void) | |
Initialization and termination methods. | |
void | init (RtecEventChannelAdmin::EventChannel_ptr lcl_ec, RtecUDPAdmin::AddrServer_ptr addr_server, TAO_ECG_Refcounted_Endpoint endpoint_rptr) |
void | connect (const RtecEventChannelAdmin::ConsumerQOS &sub) |
Connect or reconnect to the EC with the given subscriptions. | |
void | shutdown (void) |
Public Member Functions | |
int | mtu (CORBA::ULong mtu) |
Accessors. | |
CORBA::ULong | mtu (void) const |
Accessors. | |
int | get_local_addr (ACE_INET_Addr &addr) |
Get the local endpoint used to send the events. | |
virtual void | disconnect_push_consumer (void) |
The PushConsumer methods. | |
virtual void | push (const RtecEventComm::EventSet &events) |
The PushConsumer methods. | |
Protected Member Functions | |
TAO_ECG_UDP_Sender (CORBA::Boolean crc=0) | |
Private Types | |
typedef TAO_EC_Auto_Command < TAO_ECG_UDP_Sender_Disconnect_Command > | ECG_Sender_Auto_Proxy_Disconnect |
Private Member Functions | |
void | new_connect (const RtecEventChannelAdmin::ConsumerQOS &sub) |
Helpers for the connect() method. | |
void | reconnect (const RtecEventChannelAdmin::ConsumerQOS &sub) |
Helpers for the connect() method. | |
Private Attributes | |
RtecEventChannelAdmin::ProxyPushSupplier_var | supplier_proxy_ |
Proxy used to receive events from the Event Channel. | |
RtecEventChannelAdmin::EventChannel_var | lcl_ec_ |
Event Channel to which we act as a consumer. | |
RtecUDPAdmin::AddrServer_var | addr_server_ |
We query this object to determine where the events should be sent. | |
TAO_ECG_CDR_Message_Sender | cdr_sender_ |
Helper for fragmenting and sending cdr-encoded events using udp. | |
ECG_Sender_Auto_Proxy_Disconnect | auto_proxy_disconnect_ |
Manages our connection to Supplier Proxy. |
typedef TAO_EC_Auto_Command<TAO_ECG_UDP_Sender_Disconnect_Command> TAO_ECG_UDP_Sender::ECG_Sender_Auto_Proxy_Disconnect [private] |
TAO_BEGIN_VERSIONED_NAMESPACE_DECL TAO_ECG_UDP_Sender::~TAO_ECG_UDP_Sender | ( | void | ) |
Initialization and termination methods.
Create a new TAO_ECG_UDP_Sender object. (Constructor access is restricted to insure that all TAO_ECG_UDP_Sender objects are heap-allocated.)
TAO_ECG_UDP_Sender::TAO_ECG_UDP_Sender | ( | CORBA::Boolean | crc = 0 |
) | [protected] |
Constructor (protected). Clients can create new TAO_ECG_UDP_Sender objects using the static create() method.
static TAO_EC_Servant_Var<TAO_ECG_UDP_Sender> TAO_ECG_UDP_Sender::create | ( | CORBA::Boolean | crc = 0 |
) | [static] |
Initialization and termination methods.
Create a new TAO_ECG_UDP_Sender object. (Constructor access is restricted to insure that all TAO_ECG_UDP_Sender objects are heap-allocated.)
void TAO_ECG_UDP_Sender::init | ( | RtecEventChannelAdmin::EventChannel_ptr | lcl_ec, | |
RtecUDPAdmin::AddrServer_ptr | addr_server, | |||
TAO_ECG_Refcounted_Endpoint | endpoint_rptr | |||
) |
lcl_ec | Event Channel to which we will act as a consumer of events. | |
addr_server | Address server used to obtain event type to multicast group mapping. | |
endpoint_rptr | Endpoint for sending udp/multicast messages. Endpoint's dgram must be open! |
void TAO_ECG_UDP_Sender::connect | ( | const RtecEventChannelAdmin::ConsumerQOS & | sub | ) |
Connect or reconnect to the EC with the given subscriptions.
NOTE: if we are already connected to EC and a reconnection is necessary, the EC must have reconnects enabled in order for this method to succeed.
void TAO_ECG_UDP_Sender::shutdown | ( | void | ) |
Deactivate from POA and disconnect from EC, if necessary. Shut down all sender components. Calling this method may result in decrementing of the reference count (due to deactivation) and deletion of the object.
int TAO_ECG_UDP_Sender::mtu | ( | CORBA::ULong | mtu | ) |
Accessors.
The sender may need to fragment the message, otherwise the network may drop the packets. Setting the MTU can fail if the value is too small (at least the header + 8 bytes must fit).
CORBA::ULong TAO_ECG_UDP_Sender::mtu | ( | void | ) | const |
Accessors.
The sender may need to fragment the message, otherwise the network may drop the packets. Setting the MTU can fail if the value is too small (at least the header + 8 bytes must fit).
int TAO_ECG_UDP_Sender::get_local_addr | ( | ACE_INET_Addr & | addr | ) |
Get the local endpoint used to send the events.
void TAO_ECG_UDP_Sender::disconnect_push_consumer | ( | void | ) | [virtual] |
The PushConsumer methods.
Invokes shutdown (), which may result in the object being deleted, if refcounting is used to manage its lifetime.
void TAO_ECG_UDP_Sender::push | ( | const RtecEventComm::EventSet & | events | ) | [virtual] |
The PushConsumer methods.
Invokes shutdown (), which may result in the object being deleted, if refcounting is used to manage its lifetime.
void TAO_ECG_UDP_Sender::new_connect | ( | const RtecEventChannelAdmin::ConsumerQOS & | sub | ) | [private] |
Helpers for the connect() method.
void TAO_ECG_UDP_Sender::reconnect | ( | const RtecEventChannelAdmin::ConsumerQOS & | sub | ) | [private] |
Helpers for the connect() method.
RtecEventChannelAdmin::ProxyPushSupplier_var TAO_ECG_UDP_Sender::supplier_proxy_ [private] |
Proxy used to receive events from the Event Channel.
RtecEventChannelAdmin::EventChannel_var TAO_ECG_UDP_Sender::lcl_ec_ [private] |
Event Channel to which we act as a consumer.
RtecUDPAdmin::AddrServer_var TAO_ECG_UDP_Sender::addr_server_ [private] |
We query this object to determine where the events should be sent.
Helper for fragmenting and sending cdr-encoded events using udp.
Manages our connection to Supplier Proxy.