MemoryManager.h
Go to the documentation of this file.
1 /* ========================================================================
2 * PROJECT: ARToolKitPlus
3 * ========================================================================
4 * This work is based on the original ARToolKit developed by
5 * Hirokazu Kato
6 * Mark Billinghurst
7 * HITLab, University of Washington, Seattle
8 * http://www.hitl.washington.edu/artoolkit/
9 *
10 * Copyright of the derived and new portions of this work
11 * (C) 2006 Graz University of Technology
12 *
13 * This framework is free software; you can redistribute it and/or modify
14 * it under the terms of the GNU General Public License as published by
15 * the Free Software Foundation; either version 2 of the License, or
16 * (at your option) any later version.
17 *
18 * This framework is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU General Public License for more details.
22 *
23 * You should have received a copy of the GNU General Public License
24 * along with this framework; if not, write to the Free Software
25 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 *
27 * For further information please contact
28 * Dieter Schmalstieg
29 * <schmalstieg@icg.tu-graz.ac.at>
30 * Graz University of Technology,
31 * Institut for Computer Graphics and Vision,
32 * Inffeldgasse 16a, 8010 Graz, Austria.
33 * ========================================================================
34 ** @author Daniel Wagner
35 *
36 * $Id: MemoryManager.h 164 2006-05-02 11:29:10Z daniel $
37 * @file
38 * ======================================================================== */
39 
40 
41 #ifndef __ARTOOLKITPLUS_MEMORYMANAGER_HEADERFILE__
42 #define __ARTOOLKITPLUS_MEMORYMANAGER_HEADERFILE__
43 
44 
45 #include "ARToolKitPlus.h"
46 
47 
48 namespace ARToolKitPlus
49 {
50 
51 
53 
61 {
62 public:
63  virtual ~MemoryManager() {}
64 
66 
70  virtual bool init(size_t nNumInitialBytes, size_t nNumGrowBytes=0) = 0;
71 
73 
77  virtual bool deinit() = 0;
78 
80  virtual bool didInit() = 0;
81 
83 
86  virtual void* getMemory(size_t nNumBytes) = 0;
87 
89  virtual void releaseMemory(void* nMemoryBlock) = 0;
90 
92  virtual unsigned int getBytesAllocated() = 0;
93 };
94 
95 
96 } // namespace ARToolKitPlus
97 
98 
99 #endif //__ARTOOLKITPLUS_MEMORYMANAGER_HEADERFILE__
This file should only be compiled when using ARToolKitPlus as a DLL.
Definition: ar.h:60
static void init(void)
MemoryManager defines a basic interface for a custom memory manager to be uses by ARToolKitPlus...
Definition: MemoryManager.h:60
#define ARTOOLKITPLUS_API
Definition: ARToolKitPlus.h:55


tuw_artoolkitplus
Author(s): Markus Bader
autogenerated on Sun Sep 4 2016 03:24:33