code::LBInterfaceInfo Class Reference

Inheritance diagram for code::LBInterfaceInfo:

code::LBInterfaceInfo_glib code::LBInterfaceInfo_lb code::LBInterfaceInfo_rss List of all members.

Detailed Description

LBInterface is a private implementation class of LinearBuffer.

The code for this class is in LinearBuffer.C

See also:
LinearBuffer

LBInterface

RemoteLBInfo

Author:
Lakshman
Version:
Id
code_LBInterface.h,v 1.11 2009/06/02 20:17:38 lakshman Exp


Public Member Functions

virtual ~LBInterfaceInfo ()
virtual int open (int flags, LB_attr *attr)=0
virtual int close ()=0
virtual int read (void *buf, int buflen, LB_id_t msgid)=0
virtual int read (std::vector< char > &buf, LB_id_t msgid)=0
virtual int write (char *message, int length, LB_id_t msgid)=0
virtual LB_id_t previous_msgid ()=0
virtual int seek (int offset, LB_id_t from, LB_info *info)=0
virtual int stat (LB_status *status)=0
virtual int msg_info (LB_id_t msgid, LB_info *info)=0
virtual int list (LB_info *list, int list_len)=0
virtual int lock (int command, LB_id_t mid)=0

Static Public Member Functions

static LBInterfaceInfocreateLBInterfaceInfo (const URL &lbName)
 Singleton: only one interface per lbname.

Public Attributes

int id
 LB library identifier.
code::URL name
 Name of LB.
DoNothingThreadMutex lbMutex
 Mutex to serialize access to LB.

Protected Member Functions

 LBInterfaceInfo (const URL &lbName)

Static Protected Member Functions

static bool isHostNameSyntax (const char *lbName)
 For checking whether the name is of host name syntax.


Constructor & Destructor Documentation

virtual code::LBInterfaceInfo::~LBInterfaceInfo (  )  [inline, virtual]

code::LBInterfaceInfo::LBInterfaceInfo ( const URL lbName  )  [inline, protected]


Member Function Documentation

virtual int code::LBInterfaceInfo::close (  )  [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

static LBInterfaceInfo* code::LBInterfaceInfo::createLBInterfaceInfo ( const URL lbName  )  [static]

Singleton: only one interface per lbname.

Returns:
already-created interface if available.

static bool code::LBInterfaceInfo::isHostNameSyntax ( const char *  lbName  )  [static, protected]

For checking whether the name is of host name syntax.

virtual int code::LBInterfaceInfo::list ( LB_info *  list,
int  list_len 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::lock ( int  command,
LB_id_t  mid 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::msg_info ( LB_id_t  msgid,
LB_info *  info 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::open ( int  flags,
LB_attr *  attr 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual LB_id_t code::LBInterfaceInfo::previous_msgid (  )  [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::read ( std::vector< char > &  buf,
LB_id_t  msgid 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::read ( void *  buf,
int  buflen,
LB_id_t  msgid 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::seek ( int  offset,
LB_id_t  from,
LB_info *  info 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::stat ( LB_status *  status  )  [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.

virtual int code::LBInterfaceInfo::write ( char *  message,
int  length,
LB_id_t  msgid 
) [pure virtual]

Implemented in code::LBInterfaceInfo_glib, code::LBInterfaceInfo_lb, and code::LBInterfaceInfo_rss.


Member Data Documentation

int code::LBInterfaceInfo::id

LB library identifier.

DoNothingThreadMutex code::LBInterfaceInfo::lbMutex

Mutex to serialize access to LB.

code::URL code::LBInterfaceInfo::name

Name of LB.

Has machine name if remote.


Generated on Fri May 4 13:40:12 2012 for WDSS-IIw2 by  doxygen 1.4.7