channel::LocalInterface< Channel > Class Template Reference

#include <Interface.h>

Inheritance diagram for channel::LocalInterface< Channel >:

channel::Interface< Channel > List of all members.

Public Types

typedef Channel::IdType IdType
typedef Channel::IdTrait IdTrait
typedef Channel::Msg Msg
typedef Channel::Source Source
typedef Channel::Destination Destination
typedef Channel::Channel_Info_Msg Channel_Info_Msg
typedef Channel::PubSub_Info_Msg PubSub_Info_Msg
typedef Binder< typename Channel::IdType,
typename Channel::IdTrait
Binder
typedef Filter< typename Channel::IdType,
typename Channel::IdTrait
Filter
typedef Translator< typename
Channel::IdType, typename
Channel::IdTrait
Translator

Public Member Functions

 LocalInterface (Channel *chan, Binder *binder)
Member_Type type ()
Status put_msg (Msg *msg, ACE_Time_Value *timeout=NULL)
Status send_msg (Msg *msg, ACE_Time_Value *timeout=0)

Public Attributes

LocalInterfacepeer_interface_
 my peer, the interface at the other end of connection to a local peer channel
Filterfilter_
 filter & translators: policies for remote connections
Translatortranslator_

Detailed Description

template<class Channel>
class channel::LocalInterface< Channel >

LocalInterface: for connections to local/in-proc channels LocalInterface functions (interact with owner channel) as a proxy of remote peer channel

Definition at line 104 of file Interface.h.


Member Typedef Documentation

template<class Channel>
typedef Binder<typename Channel::IdType, typename Channel::IdTrait> channel::LocalInterface< Channel >::Binder
 

Definition at line 113 of file Interface.h.

template<class Channel>
typedef Channel::Channel_Info_Msg channel::LocalInterface< Channel >::Channel_Info_Msg
 

Definition at line 111 of file Interface.h.

template<class Channel>
typedef Channel::Destination channel::LocalInterface< Channel >::Destination
 

Definition at line 110 of file Interface.h.

template<class Channel>
typedef Filter<typename Channel::IdType, typename Channel::IdTrait> channel::LocalInterface< Channel >::Filter
 

Definition at line 114 of file Interface.h.

template<class Channel>
typedef Channel::IdTrait channel::LocalInterface< Channel >::IdTrait
 

Definition at line 107 of file Interface.h.

template<class Channel>
typedef Channel::IdType channel::LocalInterface< Channel >::IdType
 

Definition at line 106 of file Interface.h.

template<class Channel>
typedef Channel::Msg channel::LocalInterface< Channel >::Msg
 

Definition at line 108 of file Interface.h.

template<class Channel>
typedef Channel::PubSub_Info_Msg channel::LocalInterface< Channel >::PubSub_Info_Msg
 

Definition at line 112 of file Interface.h.

template<class Channel>
typedef Channel::Source channel::LocalInterface< Channel >::Source
 

Definition at line 109 of file Interface.h.

template<class Channel>
typedef Translator<typename Channel::IdType, typename Channel::IdTrait> channel::LocalInterface< Channel >::Translator
 

Definition at line 115 of file Interface.h.


Constructor & Destructor Documentation

template<class Channel>
channel::LocalInterface< Channel >::LocalInterface Channel chan,
Binder binder
[inline]
 

Definition at line 117 of file Interface.h.

References channel::Binder< IdType, IdTrait >::filter, channel::LocalInterface< Channel >::filter_, channel::Binder< IdType, IdTrait >::translator, and channel::LocalInterface< Channel >::translator_.


Member Function Documentation

template<class Channel>
Status channel::LocalInterface< Channel >::put_msg Msg msg,
ACE_Time_Value *  timeout = NULL
[inline]
 

Definition at line 130 of file Interface.h.

References ID2STR, channel::LocalInterface< Channel >::peer_interface_, channel::LocalInterface< Channel >::send_msg(), channel::SUCCESS, channel::Translator< IdType, IdTrait >::translate_outward(), channel::LocalInterface< Channel >::translator_, and channel::Msg< IdType, SynchPolicy >::type.

template<class Channel>
Status channel::LocalInterface< Channel >::send_msg Msg msg,
ACE_Time_Value *  timeout = 0
[inline]
 

implement Source (of owner channel) methods allow remote peer send msgs to owner channel

do nothing

Q: why need this->

Q: why this->

remote msgs only for local destinations

application msgs go to Channel

forward all msgs to owner channels

Definition at line 155 of file Interface.h.

References channel::Filter< IdType, IdTrait >::block_outward(), channel::Interface< Channel >::ch_, channel::Msg< IdType, SynchPolicy >::data(), channel::LocalInterface< Channel >::filter_, ID2STR, channel::PubSub_Info_Msg< IdType >::msg_types, channel::PubSub_Info_Msg< IdType >::num_msg_types, channel::LocalInterface< Channel >::peer_interface_, channel::SCOPE_LOCAL, channel::SCOPE_UNDEFINED, and channel::Msg< IdType, SynchPolicy >::type.

Referenced by channel::LocalConnector< Channel >::connect(), and channel::LocalInterface< Channel >::put_msg().

template<class Channel>
Member_Type channel::LocalInterface< Channel >::type void   )  [inline]
 

implement Destination (of owner channel) methods forward msgs from owner channel to remote peer

Definition at line 129 of file Interface.h.

References channel::MEMBER_REMOTE.


Member Data Documentation

template<class Channel>
Filter* channel::LocalInterface< Channel >::filter_
 

filter & translators: policies for remote connections

Definition at line 233 of file Interface.h.

Referenced by channel::LocalConnector< Channel >::connect(), channel::LocalInterface< Channel >::LocalInterface(), and channel::LocalInterface< Channel >::send_msg().

template<class Channel>
LocalInterface* channel::LocalInterface< Channel >::peer_interface_
 

my peer, the interface at the other end of connection to a local peer channel

Definition at line 231 of file Interface.h.

Referenced by channel::LocalConnector< Channel >::connect(), channel::LocalInterface< Channel >::put_msg(), and channel::LocalInterface< Channel >::send_msg().

template<class Channel>
Translator* channel::LocalInterface< Channel >::translator_
 

Definition at line 234 of file Interface.h.

Referenced by channel::LocalInterface< Channel >::LocalInterface(), and channel::LocalInterface< Channel >::put_msg().


The documentation for this class was generated from the following file:
Generated on Mon Feb 27 19:59:23 2006 for channel by  doxygen 1.4.6-NO