Титульная страница Иерархия классов Алфавитный указатель Классы Файлы Члены классов Члены файла Примеры

# BGDNetBuffer.h

См. документацию.

    00001
    00006 #ifndef __BGDNetBuffer_h__
    00007 #define __BGDNetBuffer_h__
    00008
    00009 #include "BGDNetConfig.h"
    00010
    00011 #include <nwdsbuft.h>
    00012 #include "BGDNetException.h"
    00013 #include "BGDNetString.h"
    00014 #include "BGDNetCollection.h"
    00015
    00016 namespace BGDNet
    00017 {
    00018
    00019 class Context;
    00020
    00031 class BGDNET_API Buffer
    00032 {
    00033 public:
    00034
    00035   explicit Buffer( const Context& ctx, size_t sz = DEFAULT_MESSAGE_LEN )
    00036     throw(Exception);
    00046   ~Buffer( void );
    00052   const Context& ctx( void ) const;
    00058   Buf_T* buf( void );
    00064   const Buf_T* buf( void ) const;
    00070 private:
    00071
    00072   Buf_T* m_pBuf;
    00077   const Context& m_ctx;
    00081 };
    00082
    00083
    00084
    00085
    00092 class BGDNET_API InputBuffer : public Buffer
    00093 {
    00094 public:
    00095
    00096   InputBuffer( const Context& ctx, nuint32 op, size_t sz = DEFAULT_MESSAGE_LEN )
    00097     throw(Exception);
    00105   void putAttrName( const char* name );
    00110 };
    00111
    00112
    00113
    00114
    00115 #ifdef _MSC_VER
    00116 # pragma warning(disable:4231)
    00117 #endif
    00118
    00119 BGDNET_TEMPLATE(Collection<char>);
    00120 BGDNET_TEMPLATE(Collection<Collection<char> >);
    00121
    00122 #ifdef _MSC_VER
    00123 # pragma warning(default:4231)
    00124 #endif
    00125
    00126 typedef Collection<char> NDSAttrVal;
    00127 typedef Collection<Collection<char> > NDSAttrValues;
    00128
    00129
    00130
    00131
    00139 class BGDNET_API OutputBuffer : public Buffer
    00140 {
    00141 public:
    00142
    00143   explicit OutputBuffer( const Context& ctx, size_t sz = DEFAULT_MESSAGE_LEN )
    00144     throw(Exception);
    00151   int objCount( void )
    00152     throw(Exception);
    00158   String objName( String* pBaseClass = 0 )
    00159     throw(Exception);
    00167   String objNameAndDSIInfo( char** ppInfo )
    00168     throw(Exception);
    00176   int attrCount( void )
    00177     throw(Exception);
    00183   String getAttr( NDSAttrValues* pValues );
    00190 };
    00191
    00192 } // namespace BGDNet
    00193
    00194 #endif //__BGDNetBuffer_h__