ps-tech PST Classic SDK Instruction Manual

June 6, 2024
ps-tech

PST
Classic SDK Manual

PS-Tech B.V. Falckstraat hs NL VV Amsterdam The Netherlands Call: + ( ) Fax :

  • ( )
    [email protected] http://www.ps-tech.com
    While every precaution has been taken in the preparation of this manual, PS- Tech B.V. assumes no responsibility for errors or omissions.
    Copyright © by PS-Tech B.V., Amsterdam, the Netherlands
    All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, mechanical, photocopying, recording or otherwise, without the prior written permission of PS-Tech B.V.
    PS-Tech, the PS-Tech logo, PST, PST Iris (HD), PST Base (HD) and PST Pico are either registered trademarks or trademarks of PS-Tech in the United States and/or other countries.
    Rev. . . – -gd d de
License agreement

The products of PS-Tech B.V. (PS-Tech) come with a so tware license agreement. This END USER LICENSE AGREEMENT (EULA) is shipped with each product, and is available on request at the o fices of PS-Tech B.V. In no event shall PS-Tech be held liable for any incidental, indirect, or consequential damages whatsoever (including, without limitation, damages for loss of business profits, business interruption, loss of business information, or any other pecuniary loss) arising out of the use of or inability to use the so tware or hardware.

Patent liability

No patent liability is assumed with respect to the use of the products of PS- Tech B.V.

Copyright information

Portions of the so tware included in this package contain licensed third-party technology. With some of these, you also may have additional rights, particularly to receive source code of these projects. The LDL and COLAMD libraries of the SuiteSparse project are licensed under the GNU LGPL. The SSBA library is licensed under the GNU LGPL. This so tware is based in part on the work of the FLTK project. The DevIL library is licensed under the GNU LGPL. The relevant third-party licenses are included in the license.txt file in your PST installation. Please contact PS-Tech to obtain source copies of these libraries.

Software development kit

The Classic PST Software Development Kit (Classic SDK) provides an interface between the PST tracking system and your own software applications. Note that with the release of the new PST SDK in version 5.0.0 of the PST software package, the Classic PST SDK is labeled as legacy software and is only offered for backward compatibility. When a new project making use of the PST tracking system is started it is highly recommended to use the new PST SDK. Documentation for the new PST SDK can be found in the Start menu as “PST SDK Manual” or can be opened by opening the “index.html” file in the “Development/docs” directory in the installation path.

Usage

To use the Classic PST SDK in your own software, include the header file “pstapi.h” in your project. The Classic PST SDK library is dynamically (pst.lib/pst.dll or pst.so) or statically (pst.a) linked with your program. Note that the Classic PST SDK communicates with the PST client software that is included with your PST installation. If this application is not running you will not receive tracker events in your application, even if the tracker unit itself is running. The Classic PST SDK contains two data types to describe tracker data events: Psr and PPt.

Datatype: PSTSensor

Description
PSTSensor sensor events are generated when a tracking target is visible and has been identified by the PST.

Member documentation

name| char[80]| Name of the tracking target as listed in the PST client so­tware.
---|---|---
id| int| Identifier of the tracking target as listed in the PST client so­tware.
pose| Float [16]| Row-major 4×4 transformation matrix describing the pose of the tracking target in the coordinate system as defined in the PST client so­tware (see the “Reference coordinate system” Section in the PST Manual). The pose is defined as:
where pi represents the elements from the pose, the vectors U , V , W represent the 3×3 rotation matrix in radians, and T represents the translation vector in meters.
timestamp| double| Timestamp of the moment the cameras captured the data. The timestamp uses the system clock provided in seconds since system boot (Windows) or Epoch (Linux).

Datatype: PSTPoint

Description
Point events are generated for single visible D points that have not been identified as part of an tracking target.

Member documentation

id| int| Identifier of the 3D point. As a single 3D point has no features to distinguish it from another, points are given an identifier based on their previous motion. Note that there is no guarantee that the identifier is consistent between sensor updates.
---|---|---
pos| float [3]| The 3D position of the point in meters.
timestamp| double| Timestamp of the moment the cameras captured the data. The timestamp uses the system clock provided in seconds since   system boot (Windows) or Epoch (Linux).

Header pstapi.h

Description
The interface to the PST client software.
Function documentation
int pst_connect ()
Connect to the PST
Return value int One on success, zero on failure

int pst_disconnect ()
disconnect from the PST
Return value int One on success, zero on failure

int pst_sensor_changed ()
Check if any PST sensor has been updated since the last time it was read by the SDK

Parameters id The identifier of the device (0-99)
Return value int One if new is available, zero if no new data is available

int pst_sensor_changed_by_id (int id)
Check if the PST sensor indicated by id has been updated since the last time it was read by the SDK

Parameters id The identifier of the device (0-99)
Return value int One if new data is available, zero if no new data is available

int pst_get_sensor (struct PSTSensor* sensor)
Get the last PST sensor event if a new event is available
Parameters sensor A pointer to an allocated PSTSensor struct to receive a new event
Return value int One if a new event is returned, zero if no new data is available

int pst_get_sensor_by_id (int id, struct PSTSensor*sensor)

Get the PST sensor event with the given id if a new event is available
Parameters id The identifier of the device (0-99)
sensor A pointer to an allocated PSTSensor struct to receive anew event

Return value int One if new data is available, zero if no new data is available
int pst_point_changed ()
Check if any PST point has been updated since the last time it was read by the SDK

Return value int One if a new point is available, zero if no new point is available

int pst_get_point (struct PSTPoint*point)
Get the last PST point event if a new event is available
Parameters id A pointer ta an allocated PSTPoit struct to receive a new event

Return value int One if a new point is available, zero if no new point is available

int pst_get_connection_state (int* state)
Get the connection state of the SDK to the PST client

Parameters state A pointer to an int. After the call returns successfully, state will be set to one if a connection is active,zero otherwise.

Return value int One if the state was received successfully, zero otherwise

Example

include <stdio.h>

include <math.h>

include <stdlib.h>

include “pstapi.h”

PS-Tech B.V.
Falckstraat 53 hs NL 1017VV Amsterdam
The Netherlands
Call: +31 (0)20 331 1214
Fax : +31 (0)20 524 8797
[email protected]
http://www.ps-tech.com

While every precaution has been taken in the preparation of this manual, PS- Tech B.V. assumes no responsibility for errors or omissions.
Copyright ©2021 by PS-Tech B.V., Amsterdam, the Netherlands

All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means,  mechanical, photocopying, recording or otherwise, without the prior written permission of PS-Tech B.V. PS-Tech, the PS-Tech logo, PST, PST Iris (HD), PST Base (HD) and PST Pico are either registered trademarks or trademarks of PS-Tech in the United States and/or other countries.
Rev. 1.2.2-0-gd0d9de1

Documents / Resources

| ps- tech PST Classic SDK [pdf] Instruction Manual
PST Classic SDK
---|---

Read User Manual Online (PDF format)

Loading......

Download This Manual (PDF format)

Download this manual  >>

ps-tech User Manuals

Related Manuals