00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00028 #ifndef _RTXCPPMSGBUF_H_
00029 #define _RTXCPPMSGBUF_H_
00030
00031 #include "rtxsrc/rtxCppException.h"
00032 #include "rtxsrc/rtxCppMsgBufIF.h"
00033
00042 class EXTERNRTX OSMessageBuffer : public OSMessageBufferIF {
00043 protected:
00048 OSCtxtPtr mpContext;
00049
00054 Type mBufferType;
00055
00065 OSMessageBuffer (Type bufferType, OSContext* pContext = 0);
00066
00067 public:
00072 virtual ~OSMessageBuffer () {}
00073
00078 virtual OSCtxtPtr getContext () {
00079 return mpContext;
00080 }
00081
00086 virtual OSCTXT* getCtxtPtr () {
00087 return mpContext->getPtr();
00088 }
00089
00094 virtual OSOCTET* getMsgCopy () {
00095 return 0;
00096 }
00097
00102 virtual const OSOCTET* getMsgPtr () {
00103 return getCtxtPtr()->buffer.data;
00104 }
00105
00106 virtual void initBuffer (OSOCTET* pMsgBuf, size_t msgBufLen);
00107
00108 } ;
00109
00110 #endif