Main Page | Namespace List | Class Hierarchy | Compound List | File List | Namespace Members | Compound Members | File Members | Related Pages

BspProxyImpl Class Reference

#include <BspProxyImpl.hpp>

Collaboration diagram for BspProxyImpl:

Collaboration graph
[legend]
List of all members.

Public Member Functions

const string & getIor ()

Static Public Member Functions

BspProxyImplinit (BspCentral *bspCentral_, const Config &config)
BspProxyImplgetInstance ()

Private Member Functions

 BspProxyImpl (BspCentral *bspCentral_, const Config &config)
void serverSideSetup ()

Static Private Member Functions

int registerRemoteIorWrapper (struct lua_State *state)
int takeYourPidWrapper (struct lua_State *state)
void * serverSideSetupWrapper (void *ptr)
int bspPutWrapper (struct lua_State *state)
int bspSynchWrapper (struct lua_State *state)
int bspSynchDoneWrapper (struct lua_State *state)
int bspGetWrapper (struct lua_State *state)
int bspGetRequestWrapper (struct lua_State *state)
int bspGetReplyWrapper (struct lua_State *state)

Private Attributes

lua_State * serverSideState
string orbPath
string bspIdlPath
string myIor
BspCentralbspCentral

Static Private Attributes

BspProxyImplsingleInstance = NULL

Detailed Description

BspProxyImpl - implementation of the BspProxy IDL Interface

A BspProxy represents each of the BSP tasks and allows communication betwaeen them, This class handles only the communications' details. Functionality id delecated to the BspCentral class.

Author:
Andrei Goldchleger
Date:
november/2003


Constructor & Destructor Documentation

BspProxyImpl::BspProxyImpl BspCentral bspCentral_,
const Config config
[private]
 

Private constructor for singleton

Parameters:
bspCentral_ - pointer to a BspCentral
config - for configuratios such as ORB & IDL path


Member Function Documentation

int BspProxyImpl::bspGetReplyWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspGetReply' on the single instance.

int BspProxyImpl::bspGetRequestWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspGetRequest' on the single instance.

int BspProxyImpl::bspGetWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspGet' on the single instance.

int BspProxyImpl::bspPutWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspPut' on the single instance.

int BspProxyImpl::bspSynchDoneWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspSynchDone' on the single instance.

int BspProxyImpl::bspSynchWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'bspSynch' on the single instance.

BspProxyImpl & BspProxyImpl::getInstance  )  [static]
 

Returns a reference to the single instance

const string& BspProxyImpl::getIor  )  [inline]
 

Returns the IOR of this BspProxy

BspProxyImpl & BspProxyImpl::init BspCentral bspCentral_,
const Config config
[static]
 

Initializes the single instance

Parameters:
bspCentral_ - pointer to a BspCentral instance, so that BspProxyImpl can forward calls to it
config - for configuratios such as ORB & IDL path

int BspProxyImpl::registerRemoteIorWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'registerRemoteIor' on the single instance.

void BspProxyImpl::serverSideSetup  )  [private]
 

Launches the request handler loop.

void * BspProxyImpl::serverSideSetupWrapper void *  ptr  )  [static, private]
 

Launches the request handler loop. Pthreads need a function pointer, so we need this static wrapper

int BspProxyImpl::takeYourPidWrapper struct lua_State *  state  )  [static, private]
 

Wrapper called by Lua code in order to let us call 'takeYourPid' on the single instance.


Member Data Documentation

BspCentral* BspProxyImpl::bspCentral [private]
 

pointer to a BspCentral

string BspProxyImpl::bspIdlPath [private]
 

path to the BspLib IDL

string BspProxyImpl::myIor [private]
 

ior of this BspProxyImpl

string BspProxyImpl::orbPath [private]
 

O2 directory

struct lua_State* BspProxyImpl::serverSideState [private]
 

lua_state representing the server side

BspProxyImpl * BspProxyImpl::singleInstance = NULL [static, private]
 

singleton


The documentation for this class was generated from the following files:
Generated on Mon Sep 6 16:13:10 2004 by doxygen 1.3.3