ARX  1.0
The next-generation open source augmented reality toolkit.
Loading...
Searching...
No Matches
ARTrackerVideo.h
Go to the documentation of this file.
1/*
2 * ARTrackerVideo.h
3 * artoolkitX
4 *
5 * A C++ class encapsulating functionality of a tracker which tracks from video.
6 * All optical trackers should derive from this class. Non-optical (e.g. inertial)
7 * trackers may derive directly from ARTracker.
8 *
9 * This file is part of artoolkitX.
10 *
11 * artoolkitX is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as published by
13 * the Free Software Foundation, either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * artoolkitX is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * along with artoolkitX. If not, see <http://www.gnu.org/licenses/>.
23 *
24 * As a special exception, the copyright holders of this library give you
25 * permission to link this library with independent modules to produce an
26 * executable, regardless of the license terms of these independent modules, and to
27 * copy and distribute the resulting executable under terms of your choice,
28 * provided that you also meet, for each linked independent module, the terms and
29 * conditions of the license of that module. An independent module is a module
30 * which is neither derived from nor based on this library. If you modify this
31 * library, you may extend this exception to your version of the library, but you
32 * are not obligated to do so. If you do not wish to do so, delete this exception
33 * statement from your version.
34 *
35 * Copyright 2018 Realmax, Inc.
36 * Copyright 2015 Daqri, LLC.
37 * Copyright 2010-2015 ARToolworks, Inc.
38 *
39 * Author(s): Philip Lamb, Julian Looser.
40 *
41 */
42
43
44#ifndef ARTRACKERVIDEO_H
45#define ARTRACKERVIDEO_H
46
47#include <ARX/ARTracker.h>
48
49class ARTrackerVideo : public ARTracker {
50public:
52 virtual ~ARTrackerVideo() {};
53
54 virtual bool start(ARParamLT *paramLT, AR_PIXEL_FORMAT pixelFormat) = 0;
55 virtual bool start(ARParamLT *paramLT0, AR_PIXEL_FORMAT pixelFormat0, ARParamLT *paramLT1, AR_PIXEL_FORMAT pixelFormat1, const ARdouble transL2R[3][4]) = 0;
56 virtual bool update(AR2VideoBufferT *buff) = 0;
57 virtual bool update(AR2VideoBufferT *buff0, AR2VideoBufferT *buff1) = 0;
58private:
59 bool start() { return false; };
60 bool update() { return false; };
61};
62
63
64#endif // !ARTRACKERVIDEO_H
double ARdouble
Definition: ar.h:99
Definition: ARTracker.h:60
Definition: ARTrackerVideo.h:49
virtual bool update(AR2VideoBufferT *buff)=0
virtual bool update(AR2VideoBufferT *buff0, AR2VideoBufferT *buff1)=0
ARTrackerVideo()
Definition: ARTrackerVideo.h:51
virtual ~ARTrackerVideo()
Definition: ARTrackerVideo.h:52
virtual bool start(ARParamLT *paramLT0, AR_PIXEL_FORMAT pixelFormat0, ARParamLT *paramLT1, AR_PIXEL_FORMAT pixelFormat1, const ARdouble transL2R[3][4])=0
virtual bool start(ARParamLT *paramLT, AR_PIXEL_FORMAT pixelFormat)=0
A structure which carries information about a video frame retrieved by the video library.
Definition: ar.h:148
Structure holding camera parameters, in lookup table form.
Definition: param.h:151