XrdClientLogConnection.hh

Go to the documentation of this file.
00001 //////////////////////////////////////////////////////////////////////////
00002 //                                                                      //
00003 // XrdClientLogConnection                                               //
00004 //                                                                      //
00005 // Author: Fabrizio Furano (INFN Padova, 2004)                          //
00006 // Adapted from TXNetFile (root.cern.ch) originally done by             //
00007 //  Alvise Dorigo, Fabrizio Furano                                      //
00008 //          INFN Padova, 2003                                           //
00009 //                                                                      //
00010 // Class implementing logical connections                               //
00011 //                                                                      //
00012 //////////////////////////////////////////////////////////////////////////
00013 
00014 //       $Id: XrdClientLogConnection.hh 22437 2008-03-04 14:35:16Z rdm $
00015 
00016 #ifndef XRD_CLOGCONNECTION_H
00017 #define XRD_CLOGCONNECTION_H
00018 
00019 
00020 #include "XProtocol/XPtypes.hh"
00021 #include "XrdClient/XrdClientUnsolMsg.hh"
00022 
00023 class XrdClientSid;
00024 class XrdClientPhyConnection;
00025 
00026 class XrdClientLogConnection: public XrdClientAbsUnsolMsgHandler, 
00027    public XrdClientUnsolMsgSender {
00028 private:
00029    XrdClientPhyConnection            *fPhyConnection;
00030 
00031    // A logical connection has a private streamid
00032    kXR_unt16                         fStreamid;
00033 
00034    XrdClientSid                     *fSidManager;
00035 
00036 public:
00037    XrdClientLogConnection(XrdClientSid *sidmgr);
00038    virtual ~XrdClientLogConnection();
00039 
00040    inline XrdClientPhyConnection     *GetPhyConnection() {
00041       return fPhyConnection;
00042    }
00043 
00044    UnsolRespProcResult               ProcessUnsolicitedMsg(XrdClientUnsolMsgSender *sender,
00045                                                            XrdClientMessage *unsolmsg);
00046 
00047    int                               ReadRaw(void *buffer, int BufferLength);
00048 
00049    inline void                       SetPhyConnection(XrdClientPhyConnection *PhyConn) {
00050       fPhyConnection = PhyConn;
00051    }
00052 
00053     int                               WriteRaw(const void *buffer, int BufferLength, int substreamid);
00054 
00055    inline kXR_unt16                  Streamid() {
00056       return fStreamid;
00057    };
00058 };
00059 
00060 #endif

Generated on Tue Jul 5 14:46:18 2011 for ROOT_528-00b_version by  doxygen 1.5.1