Used by the Transport Current feature to keep track of which Transport is currently active.
More...
#include <Transport_Selection_Guard.h>
List of all members.
Public Member Functions |
| | Transport_Selection_Guard (TAO_Transport *t) |
| | Ctor.
|
| | ~Transport_Selection_Guard (void) |
| | Dtor.
|
| TAO_Transport * | operator-> (void) const |
| | getter
|
| TAO_Transport & | operator* (void) const |
| | getter
|
| TAO_Transport * | get (void) const |
| | Getter.
|
| Transport_Selection_Guard & | set (TAO_Transport *t) |
| | Setter.
|
| Transport_Selection_Guard & | operator= (const Transport_Selection_Guard &rhs) |
Static Public Member Functions |
| static Transport_Selection_Guard * | current (TAO_ORB_Core *core, size_t tss_slot_id) |
Private Member Functions |
| | Transport_Selection_Guard (const Transport_Selection_Guard &) |
| bool | operator! () const |
Private Attributes |
| TAO_Transport * | curr_ |
| | The "real" Transport, i.e. the one selected at present.
|
Friends |
| bool | operator== (const Transport_Selection_Guard &lhs, const TAO_Transport *rhs) |
| bool | operator== (const TAO_Transport *lhs, const Transport_Selection_Guard &rhs) |
| bool | operator!= (const Transport_Selection_Guard &lhs, const TAO_Transport *rhs) |
| bool | operator!= (const TAO_Transport *lhs, const Transport_Selection_Guard &rhs) |
| template<class U > |
| bool | operator== (const Transport_Selection_Guard &lhs, const U *rhs) |
| template<class U > |
| bool | operator== (const U *lhs, const Transport_Selection_Guard &rhs) |
| template<class U > |
| bool | operator!= (const Transport_Selection_Guard &lhs, const U *rhs) |
| template<class U > |
| bool | operator!= (const U *lhs, const Transport_Selection_Guard &rhs) |
Detailed Description
Used by the Transport Current feature to keep track of which Transport is currently active.
Whenever a Transport is selected: during an upcall, or prior to a client invocation an instance of this class is created [on the stack, or as a member of another class] to keep track of the said Transport. The class implements the RAII idiom, which makes it possible to build a stack of these instances as the thread is doing nested upcalls or client invocations.
It utilizes TAO_TSS_Resources::tsg_ member pointer to keep track of stack-linked Transport_Selection_Guard instances.
If the Transport Current feature is disabled most methods are no-ops and add no overhead on the critical path.
See Also:
https://svn.dre.vanderbilt.edu/viewvc/Middleware/trunk/TAO/docs/transport_current/index.html?revision=HEAD
Constructor & Destructor Documentation
| TAO::Transport_Selection_Guard::Transport_Selection_Guard |
( |
TAO_Transport * |
t |
) |
|
| TAO::Transport_Selection_Guard::~Transport_Selection_Guard |
( |
void |
|
) |
|
Member Function Documentation
| TAO_Transport* TAO::Transport_Selection_Guard::get |
( |
void |
|
) |
const [inline] |
| bool TAO::Transport_Selection_Guard::operator! |
( |
|
) |
const [inline, private] |
| TAO_Transport& TAO::Transport_Selection_Guard::operator* |
( |
void |
|
) |
const [inline] |
| TAO_Transport* TAO::Transport_Selection_Guard::operator-> |
( |
void |
|
) |
const [inline] |
Friends And Related Function Documentation
Member Data Documentation
The "real" Transport, i.e. the one selected at present.
The documentation for this class was generated from the following files: