TrackerMultiMarker.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: TrackerMultiMarker.h 164 2006-05-02 11:29:10Z daniel $
37 * @file
38 * ======================================================================== */
39 
40 
41 #ifndef __TRACKERMULTIMARKER_HEADERFILE__
42 #define __TRACKERMULTIMARKER_HEADERFILE__
43 
44 
45 #include <ARToolKitPlus/Tracker.h>
46 #include <ARToolKitPlus/Logger.h>
47 
48 
49 namespace ARToolKitPlus
50 {
51 
52 
54 
59 {
60 public:
62  {}
63 
66 
71  virtual bool init(const char* nCamParamFile, const char* nMultiFile, ARFloat nNearClip, ARFloat nFarClip,
72  ARToolKitPlus::Logger* nLogger=NULL) = 0;
73  virtual bool init(Camera* camerae, const char* nMultiFile, ARFloat nNearClip, ARFloat nFarClip,
74  ARToolKitPlus::Logger* nLogger=NULL) = 0;
75 
77 
80  virtual int calc(const unsigned char* nImage) = 0;
81 
83  virtual int getNumDetectedMarkers() const = 0;
84 
86 
91  virtual void setUseDetectLite(bool nEnable) = 0;
92 
94 
97  virtual void getDetectedMarkers(int*& nMarkerIDs) = 0;
98 
100  virtual const ARMarkerInfo& getDetectedMarker(int nWhich) const = 0;
101 
103 
107  virtual const ARMultiMarkerInfoT* getMultiMarkerConfig() const = 0;
108 
109 
111 
117  virtual void getARMatrix(ARFloat nMatrix[3][4]) const = 0;
118 };
119 
120 
121 }; // namespace ARToolKitPlus
122 
123 
124 #endif //__TRACKERMULTIMARKER_HEADERFILE__
virtual const ARMultiMarkerInfoT * getMultiMarkerConfig() const =0
Returns the loaded ARMultiMarkerInfoT object.
virtual void setUseDetectLite(bool nEnable)=0
Enables usage of arDetectMarkerLite. Otherwise arDetectMarker is used.
Tracker is the vision core of ARToolKit.
Definition: Tracker.h:70
virtual bool init(const char *nCamParamFile, const char *nMultiFile, ARFloat nNearClip, ARFloat nFarClip, ARToolKitPlus::Logger *nLogger=NULL)=0
Defines a simple interface for multi-marker tracking with ARToolKitPlus.
virtual void getDetectedMarkers(int *&nMarkerIDs)=0
Returns array of detected marker IDs.
This file should only be compiled when using ARToolKitPlus as a DLL.
Definition: ar.h:60
virtual const ARMarkerInfo & getDetectedMarker(int nWhich) const =0
Returns the ARMarkerInfo object for a found marker.
virtual void getARMatrix(ARFloat nMatrix[3][4]) const =0
Provides access to ARToolKit&#39; internal version of the transformation matrix.
virtual int getNumDetectedMarkers() const =0
Returns the number of detected markers used for multi-marker tracking.
virtual int calc(const unsigned char *nImage)=0
calculates the transformation matrix
ARToolKit::Logger specifies the interface for a logging application.
Definition: Logger.h:61
#define NULL
Definition: PocketKnife.h:38
float ARFloat
Definition: config.h:60


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