00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016 #include <malloc.h>
00017
00018
00019 #include <lDefs.h>
00020 #include <lTypes.h>
00021 #include <lTrace.h>
00022
00023
00024 #include <cBufferItem.h>
00025
00026
00027 #include <cRefBase.h>
00028
00029 BufferItem::BufferItem()
00030
00031 {
00032 #ifdef C_BUFFERITEM_TRACE
00033 logmsg("BufferItem::BufferItem() invoked");
00034 #endif
00035 _MemoryPointer = NULL;
00036 _RefBase = NULL;
00037 _Next = NULL;
00038 };
00039
00040 BufferItem::BufferItem(
00041 const class RefBase &DbPtr,
00042 const class Object *const MemPtr
00043 )
00044
00045 {
00046 #ifdef C_BUFFERITEM_TRACE
00047 logmsg("BufferItem::BufferItem(...) invoked ");
00048 #endif
00049 Set(DbPtr,MemPtr);
00050 #ifdef C_BUFFERITEM_TRACE
00051 logmsg("BufferItem::BufferItem(...) finished ");
00052 #endif
00053 };
00054
00055 BufferItem::~BufferItem()
00056
00057 {
00058 #ifdef C_BUFFERITEM_TRACE
00059 logmsg("BufferItem::~BufferItem() invoked and finished");
00060 #endif
00061 if (_RefBase != NULL)
00062 delete((RefBase *)_RefBase);
00063 };
00064
00065 bool BufferItem::Set(const RefBase &DbPtr, const Object *MemPtr)
00066
00067 {
00068 #ifdef C_BUFFERITEM_TRACE
00069 logmsg("BufferItem::Set() invoked");
00070 #endif
00071 _MemoryPointer = MemPtr;
00072 _RefBase = new RefBase(DbPtr);
00073 _Next = NULL;
00074 #ifdef C_BUFFERITEM_TRACE
00075 logmsg("BufferItem::Set() finished");
00076 #endif
00077 return(true);
00078 };
00079
00080 RefBase &BufferItem::GetRefBase() const
00081
00082 {
00083 #ifdef C_BUFFERITEM_TRACE
00084 logmsg("BufferItem::GetRefBase() invoked and finish");
00085 #endif
00086 return (*(RefBase *)_RefBase);
00087 };
00088
00089 Object *BufferItem::GetMemoryPointer() const
00090
00091 {
00092 #ifdef C_BUFFERITEM_TRACE
00093 logmsg("BufferItem::GetMemoryPointer() invoked and finished");
00094 #endif
00095 return (Object *)_MemoryPointer;
00096 };