OSRTMsgBufIF.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2003-2010 Objective Systems, Inc.
00003  *
00004  * This software is furnished under a license and may be used and copied
00005  * only in accordance with the terms of such license and with the
00006  * inclusion of the above copyright notice. This software or any other
00007  * copies thereof may not be provided or otherwise made available to any
00008  * other person. No title to and ownership of the software is hereby
00009  * transferred.
00010  *
00011  * The information in this software is subject to change without notice
00012  * and should not be construed as a commitment by Objective Systems, Inc.
00013  *
00014  * PROPRIETARY NOTICE
00015  *
00016  * This software is an unpublished work subject to a confidentiality agreement
00017  * and is protected by copyright and trade secret law.  Unauthorized copying,
00018  * redistribution or other use of this work is prohibited.
00019  *
00020  * The above notice of copyright on this source code product does not indicate
00021  * any actual or intended publication of such source code.
00022  *
00023  *****************************************************************************/
00028 #ifndef _OSRTMSGBUFIF_H_
00029 #define _OSRTMSGBUFIF_H_
00030 
00031 #include "rtxsrc/OSRTContext.h"
00032 #include "rtxsrc/OSRTCtxtHolderIF.h"
00033 
00034 class OSXMLReaderClass;
00035 
00047 class EXTRTCLASS OSRTMessageBufferIF : public OSRTCtxtHolderIF {
00048  public:
00049    enum Type {
00050       BEREncode, BERDecode, PEREncode, PERDecode, XEREncode, XERDecode,
00051       XMLEncode, XMLDecode, Stream
00052    } ;
00053  protected:
00058    virtual ~OSRTMessageBufferIF () {}
00059 
00060  public:
00061    // Virtual methods
00065    virtual void* getAppInfo () = 0;
00066 
00073    virtual size_t getByteIndex () = 0;
00074 
00083    virtual OSOCTET* getMsgCopy () = 0;
00084 
00091    virtual const OSOCTET* getMsgPtr () = 0;
00092 
00100    virtual int init () = 0;
00101 
00113    virtual int initBuffer (OSOCTET* pMsgBuf, size_t msgBufLen) = 0;
00114 
00127    virtual OSBOOL isA (int bufferType) = 0;
00128 
00132    virtual void setAppInfo (void* pAppInfo) = 0;
00133 
00137    virtual void setNamespace
00138       (const OSUTF8CHAR* /*prefix*/, const OSUTF8CHAR* /*uri*/,
00139        OSRTDList* /*pNSAttrs*/ = 0) {}
00140 
00146    virtual void setDiag (OSBOOL value=TRUE) = 0;
00147 
00148 };
00149 
00152 #endif