| PST SDK 6.0.0.0-272350a

PstTypes.h
Go to the documentation of this file.
1 // Copyright PS-Tech B.V. All Rights Reserved.
2
3 #pragma once
4
5 #include "PstString.h"
6 #include "PstVector.h"
7 #include "PstArray.h"
8
9 namespace PSTech
10 {
11 namespace pstsdk
12 {
27 struct Image
28 {
29 unsigned int width;
30 unsigned int height;
31 Utils::PstVector<unsigned char*> images;
32 };
33
41 struct Target
42 {
43 Utils::PstString name;
44 Utils::PstString uuid;
45 int id;
46 };
47
55 typedef Utils::PstVector<Target> Targets;
56
69 struct TargetStatus : public Target
70 {
71 bool status;
72 };
73
81 typedef Utils::PstVector<TargetStatus> TargetStatuses;
82
93 struct Point
94 {
95 int id;
96 Utils::PstArray<float, 3> position;
97 };
98
106 typedef Utils::PstVector<Point> Points;
107
121 struct TargetPose : public Target
122 {
123 Utils::PstArray<float, 16> pose;
124 Points matched_markers;
125 };
126
134 typedef Utils::PstVector<TargetPose> TargetPoses;
135
143 typedef Utils::PstVector<Utils::PstArray<float, 3>> MarkerList;
144
157 struct TrackerData
158 {
159 double timestamp;
160 int seqnumber;
161 TargetPoses targetlist;
162 Points datapoints;
163 };
164
172 enum class StatusMessage
173 {
174 OK,
175 NOT_INITIALIZED,
176 DISCONNECTED,
177 ERR_GENERAL,
178 ERR_TIMEOUT,
179 ERR_NOCAMS_FOUND,
180 ERR_NOTENOUGHTCAMS_FOUND,
181 ERR_INITERROR,
182 ERR_CANNOT_START_CAMS,
183 ERR_CANNOT_SETUP_CAMS,
184 };
185
193 enum class TrackerMode
194 {
195 LOWPOWER,
196 SETUP,
197 TRACKING,
198 TRAINING,
199 DISCONNECT,
200 RECONNECT,
201 TRACKER_ERROR,
202 UNKNOWN,
203 };
204
207 }
208 }
PSTech::pstsdk::Target::name
Utils::PstString name
Definition: PstTypes.h:43
PSTech::pstsdk::TargetStatus
Tracking target status.
Definition: PstTypes.h:69
PSTech::Utils::PstVector
Basic vector class, cloning std::vector<T>.
Definition: PstVector.h:29
PSTech
Definition: ExportedTypeConversions.h:8
PSTech::pstsdk::TrackerMode::DISCONNECT
PSTech::pstsdk::TrackerMode::LOWPOWER
PstVector.h
PSTech::pstsdk::TrackerData::datapoints
Points datapoints
Definition: PstTypes.h:162
PstString.h
PSTech::pstsdk::TrackerMode::TRACKING
PSTech::pstsdk::Points
Utils::PstVector< Point > Points
Vector of Point objects.
Definition: PstTypes.h:106
PSTech::pstsdk::TrackerMode::TRACKER_ERROR
PSTech::pstsdk::MarkerList
Utils::PstVector< Utils::PstArray< float, 3 > > MarkerList
Vector of 3D marker positions of a tracking Target.
Definition: PstTypes.h:143
PSTech::pstsdk::StatusMessage::ERR_NOTENOUGHTCAMS_FOUND
PSTech::pstsdk::TrackerData::seqnumber
int seqnumber
Definition: PstTypes.h:160
PSTech::pstsdk::TrackerMode::TRAINING
PSTech::pstsdk::Image::width
unsigned int width
Definition: PstTypes.h:29
PSTech::pstsdk::TargetPose::matched_markers
Points matched_markers
Definition: PstTypes.h:124
PSTech::pstsdk::TargetPose::pose
Utils::PstArray< float, 16 > pose
Definition: PstTypes.h:123
PSTech::pstsdk::Target
Tracking target information.
Definition: PstTypes.h:41
PSTech::pstsdk::StatusMessage::ERR_GENERAL
PSTech::pstsdk::TargetPoses
Utils::PstVector< TargetPose > TargetPoses
Vector of TargetPose objects.
Definition: PstTypes.h:134
PSTech::pstsdk::StatusMessage::ERR_NOCAMS_FOUND
PSTech::pstsdk::StatusMessage::ERR_INITERROR
PSTech::pstsdk::TargetStatus::status
bool status
Definition: PstTypes.h:71
PSTech::pstsdk::StatusMessage::DISCONNECTED
PSTech::pstsdk::Targets
Utils::PstVector< Target > Targets
Vector of Target objects.
Definition: PstTypes.h:55
PSTech::pstsdk::TargetStatuses
Utils::PstVector< TargetStatus > TargetStatuses
Vector of TargetStatus objects.
Definition: PstTypes.h:81
PSTech::pstsdk::Target::uuid
Utils::PstString uuid
Definition: PstTypes.h:44
PstArray.h
PSTech::pstsdk::TrackerMode::SETUP
PSTech::pstsdk::Image::height
unsigned int height
Definition: PstTypes.h:30
PSTech::pstsdk::TrackerMode::UNKNOWN
PSTech::pstsdk::TrackerMode::RECONNECT
PSTech::pstsdk::StatusMessage
StatusMessage
Tracker status messages enum class.
Definition: PstTypes.h:172
PSTech::pstsdk::Point::position
Utils::PstArray< float, 3 > position
Definition: PstTypes.h:96
PSTech::pstsdk::TargetPose
Estimated tracking target pose and detected 3D markers.
Definition: PstTypes.h:121
PSTech::pstsdk::StatusMessage::ERR_CANNOT_START_CAMS
PSTech::pstsdk::StatusMessage::ERR_TIMEOUT
PSTech::pstsdk::Point
Estimated 3D marker location.
Definition: PstTypes.h:93
PSTech::pstsdk::TrackerData::timestamp
double timestamp
Definition: PstTypes.h:159
PSTech::pstsdk::StatusMessage::ERR_CANNOT_SETUP_CAMS
PSTech::pstsdk::StatusMessage::OK
PSTech::pstsdk::Image::images
Utils::PstVector< unsigned char * > images
Definition: PstTypes.h:31
PSTech::pstsdk::Image
Images retrieved from the tracker.
Definition: PstTypes.h:27
PSTech::pstsdk::Target::id
int id
Definition: PstTypes.h:45
PSTech::Utils::PstString
Definition: PstString.h:17
PSTech::pstsdk::TrackerData
Tracking information retrieved from tracker.
Definition: PstTypes.h:157
PSTech::pstsdk::TrackerMode
TrackerMode
Tracker mode enum class.
Definition: PstTypes.h:193
PSTech::pstsdk::TrackerData::targetlist
TargetPoses targetlist
Definition: PstTypes.h:161
PSTech::pstsdk::StatusMessage::NOT_INITIALIZED
PSTech::Utils::PstArray< float, 3 >
PSTech::pstsdk::Point::id
int id
Definition: PstTypes.h:95