libcommonc++  0.7
JavaBuffer.h++
Go to the documentation of this file.
1 /* ---------------------------------------------------------------------------
2  commonc++ - A C++ Common Class Library
3  Copyright (C) 2005-2014 Mark A Lindner
4 
5  This file is part of commonc++.
6 
7  This library is free software; you can redistribute it and/or
8  modify it under the terms of the GNU Library General Public
9  License as published by the Free Software Foundation; either
10  version 2 of the License, or (at your option) any later version.
11 
12  This library is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  Library General Public License for more details.
16 
17  You should have received a copy of the GNU Library General Public
18  License along with this library; if not, write to the Free
19  Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20  ---------------------------------------------------------------------------
21 */
22 
23 #ifndef __ccxx_JavaBuffer_hxx
24 #define __ccxx_JavaBuffer_hxx
25 
26 #include <commonc++/Common.h++>
27 #include <commonc++/Buffer.h++>
29 
30 namespace ccxx {
31 
38 {
39  public:
40 
49  JavaBuffer(JavaVirtualMachine* jvm, size_t size);
50 
52  ~JavaBuffer();
53 
57  void setSize(size_t newSize);
58 
60  inline jobject getJavaObject()
61  { return(_javaBuffer); }
62 
63  protected:
64 
66  jobject _javaBuffer;
67  JavaVirtualMachine *_jvm;
70  private:
71 
72  void destroyJavaBuffer();
73  void createJavaBuffer();
74 };
75 
76 } // namespace ccxx
77 
78 #endif // __ccxx_JavaBuffer_hxx
#define COMMONCPPJVM_API
Definition: Common.h++:128
An object that encapsulates (most of) the Java Native Interface (JNI) to a Java Virtual Machine...
Definition: JavaVirtualMachine.h++:53
A buffer for storing a contiguous sequence of elements.
Definition: Buffer.h++:44
jobject getJavaObject()
Get the JVM object representing the Java direct buffer.
Definition: JavaBuffer.h++:60
Definition: AllocationMap.c++:25
An implementation of Buffer representing a Java direct buffer.
Definition: JavaBuffer.h++:37