Modeler Extensions Framework
BufferHelper.h
Go to the documentation of this file.
1 //============================================================================
2 // Licensed Materials - Property of IBM
3 //
4 // IBM SPSS Products: Modeler
5 //
6 // (C) Copyright IBM Corp. 1994, 2014
7 //
8 // US Government Users Restricted Rights - Use, duplication or disclosure restricted
9 // by GSA ADP Schedule Contract with IBM Corp.
10 //============================================================================
11 /*
12  Modeler Extensions Framework C++ Helpers (BufferHelper.h)
13 */
14 
15 #ifndef BUFFER_HELPER_H
16 #define BUFFER_HELPER_H
17 
18 #include <sys/types.h>
19 
20 namespace ClemextCppHelper {
21 
24 class BufferHelper {
25  void *buffer_;
26  size_t buffer_size_;
27 public:
32  BufferHelper(size_t initial_size = 8192);
33 
38  ~BufferHelper();
39 
44  operator char *();
49  operator void *();
54  operator size_t();
55 
60  void resize(size_t sz);
61 
62 private:
63  void allocate(size_t sz);
64  void clear();
65 };
66 
67 } // CLEMEXTCppHelper
68 
69 #endif
BufferHelper(size_t initial_size=8192)