MAK Data Logger API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
smartBuffer.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 ******************************************************************************/
5 
8 
9 #ifndef smartBuffer_H_
10 #define smartBuffer_H_
11 
12 #include "lgrUtil.h"
13 #include <lgrUtil/memoryBuffer.h>
14 
15 namespace MAKLogger
16 {
17 
22  {
23  public:
28  explicit DtSmartBuffer(const DtMemoryBufferSP& parentBuffer);
29 
32  DtSmartBuffer(const DtMemoryBufferSP& parentBuffer, size_t offset, size_t size);
33 
35  ~DtSmartBuffer();
36 
38  DtMemoryBufferSP buffer() const;
39 
44  void setBuffer(const DtMemoryBufferSP& buffer);
45 
47  void* data();
48 
50  const void* data() const;
51 
53  size_t size() const;
54 
60  void resize(size_t);
61 
64  size_t availableSize() const;
65 
67  size_t currentOffset() const;
68 
72  void increaseOffset(int offsetInBytes);
73 
77  void setOffset(int offsetInBytes);
78 
80  void resetOffset();
81 
82  private:
84  void* mySubData;
85  size_t mySize;
86  };
87 
88 }
89 
90 #endif
DtBoost::shared_ptr< DtMemoryBuffer > DtMemoryBufferSP
Definition: memoryBuffer.h:19
#define DT_DLL_LGRUTIL
Definition: lgrUtil.h:19
void * mySubData
Definition: smartBuffer.h:84
DtMemoryBufferSP myBuffer
Definition: smartBuffer.h:83
Contains IMPORT/EXPORT macros for lgrUtil library.
A smart buffer has a shared pointer to the memory buffer and an offset and size of a &#39;smart&#39; sub buff...
Definition: smartBuffer.h:21
Contains MAKLogger::DtMemoryBuffer class.
size_t mySize
Definition: smartBuffer.h:85

Document ID: Generated on Thu Jul 14 15:45:33 EDT 2022 from SVN revision 244827
Copyright © 2021 MAK Technologies. All Rights Reserved (www.mak.com)