DLL.cpp
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: DLL.cpp 162 2006-04-19 21:28:10Z grabner $
37  * @file
38  * ======================================================================= */
39 
40 
42 
44 
45 // fix bug in intel compiler which forgets to link
46 // against the standard run-time library.
47 //
48 /*#ifndef IS_EVC4
49 # if defined(__INTEL_COMPILER) && defined(_WIN32_WCE)
50 # ifdef _DEBUG
51 # pragma comment(linker, "/defaultlib:MSVCRTd.lib")
52 # else
53 # pragma comment(linker, "/defaultlib:MSVCRT.lib")
54 # endif
55 # endif
56 #endif*/
57 //#pragma comment(linker, "/disallowlib:oldnames.lib")
58 
59 namespace ARToolKitPlus
60 {
61 
62 
63 #ifdef ARTOOLKITPLUS_DLL
64 
66 createTrackerSingleMarker(int nWidth, int nHeight,
67  int nMarkerSizeX, int nMarkerSizeY, int nMarkerSampleNum,
68  ARToolKitPlus::PIXEL_FORMAT nPixelFormat)
69 {
70  if(nMarkerSizeX==6 && nMarkerSizeY==6 && nMarkerSampleNum==6)
71  {
72  typedef ARToolKitPlus::TrackerSingleMarkerImpl<6,6,6, 3, 10> TrackerSingleMarker_6_6_6_3_10;
73 
74  if(memManager && !memManager->didInit())
75  memManager->init(TrackerSingleMarker_6_6_6_3_10::getMemoryRequirements());
76 
77  TrackerSingleMarker* tracker = new TrackerSingleMarker_6_6_6_3_10(nWidth, nHeight);
78  tracker->setPixelFormat(nPixelFormat);
79  return tracker;
80  }
81 
82  return NULL;
83 }
84 
85 
86 #endif //ARTOOLKITPLUS_DLL
87 
88 
89 } // namespace ARToolKitPlus
90 
91 
ARTOOLKITPLUS_API ARToolKitPlus::TrackerSingleMarker * createTrackerSingleMarker(int nWidth, int nHeight, int nMarkerSizeX, int nMarkerSizeY, int nMarkerSampleNum, ARToolKitPlus::PIXEL_FORMAT nPixelFormat=ARToolKitPlus::PIXEL_FORMAT_RGB)
virtual bool didInit()=0
Returns true if the MemoryManager was already initialized.
TrackerSingleMarkerImpl implements the TrackerSingleMarker interface.
MemoryManager * memManager
Returns whether single or double precision is used.
This file should only be compiled when using ARToolKitPlus as a DLL.
Definition: ar.h:60
Defines a simple interface for single-marker tracking with ARToolKitPlus.
#define NULL
Definition: PocketKnife.h:38
virtual bool init(size_t nNumInitialBytes, size_t nNumGrowBytes=0)=0
The MemoryManager will allocate an initial amount of memory.
#define ARTOOLKITPLUS_API
Definition: ARToolKitPlus.h:55


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