#pragma once

#pragma pack(push)
#pragma pack(1)

struct sLabViewRigBodyDescription
{
	int ID;
	int parentID;
	float offsetx;
	float offsety;
	float offsetz;
	float qx;
	float qy;
	float qz;
	float qw;
};

struct sLabViewRigBodyData
{
	int ID;
	float x;
	float y;
	float z;
	float qx;
	float qy;
	float qz;
	float qw;
	int nMarkers;
	float MeanError;
	short params;
};

struct sLabViewMocapDataCount
{
	int iFrame;
	int nMarkerSets;
	int nOtherMarkers;
	int nRigidBodies;
	int nSkeletons;
	int nLabeledMarkers;
	int nAnalogdatas;
	float fLatency;
	unsigned int Timecode;
	unsigned int TimecodeSubframe;
	long long iTimeStamp;
	short params;
};

struct sLabViewMarkerPointData
{
	float x;
	float y;
	float z;
};

// Marker
struct sLabViewMarker
{
	int ID;
	float x;
	float y;
	float z;
	float size;
	short params;
};

#pragma pack(pop)