Expand EngineAPI type definitions

This commit is contained in:
Lukas Joergensen 2019-08-03 12:39:41 +02:00 committed by Lukas Aldershaab
parent f5f0eb2bb4
commit a241d27b58
13 changed files with 284 additions and 36 deletions

View file

@ -25,32 +25,42 @@
#include "core/util/tVector.h"
#include "core/util/uuid.h"
#include "core/color.h"
#include "math/mPolyhedron.h"
IMPLEMENT_STRUCT(PlaneF,
PlaneF, ,
"")
IMPLEMENT_STRUCT( Vector< bool >,
BoolVector,,
FIELD(x, x, 1, "")
FIELD(y, y, 1, "")
FIELD(z, z, 1, "")
FIELD(d, d, 1, "")
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( PolyhedronData::Edge,
Edge,,
"" )
FIELD_AS(U32, face, face, 2, "")
FIELD_AS(U32, vertex, vertex, 2, "")
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Vector< S32 >,
IntVector,,
"" )
IMPLEMENT_STRUCT(Torque::UUID,
UUID, ,
"")
Torque::UUIDEngineExport::getAField(),
Torque::UUIDEngineExport::getBField(),
Torque::UUIDEngineExport::getCField(),
Torque::UUIDEngineExport::getDField(),
Torque::UUIDEngineExport::getEField(),
Torque::UUIDEngineExport::getFField(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Vector< F32 >,
FloatVector,,
"" )
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Torque::UUID,
UUID,,
"" )
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( ColorI,
ColorI,,
"RGBA color quadruple in 8bit integer precision per channel." )
@ -73,3 +83,74 @@ IMPLEMENT_STRUCT( LinearColorF,
FIELD( alpha, alpha, 1, "Alpha channel value." )
END_IMPLEMENT_STRUCT;
// Vectors
IMPLEMENT_STRUCT( Vector< bool >,
BoolVector,,
"" )
VectorFieldEngineExport::getElementCountField< bool >(),
VectorFieldEngineExport::getArraySizeField< bool >(),
VectorFieldEngineExport::getArrayField< bool >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Vector< S32 >,
IntVector,,
"" )
VectorFieldEngineExport::getElementCountField< S32 >(),
VectorFieldEngineExport::getArraySizeField< S32 >(),
VectorFieldEngineExport::getArrayField< S32 >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Vector< F32 >,
FloatVector,,
"" )
VectorFieldEngineExport::getElementCountField< F32 >(),
VectorFieldEngineExport::getArraySizeField< F32 >(),
VectorFieldEngineExport::getArrayField< F32 >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT( Vector< Point3F >,
Point3FVector,,
"" )
VectorFieldEngineExport::getElementCountField< Point3F >(),
VectorFieldEngineExport::getArraySizeField< Point3F >(),
VectorFieldEngineExport::getArrayField< Point3F >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT(Vector< PlaneF >,
PlaneFVector, ,
"")
VectorFieldEngineExport::getElementCountField< PlaneF >(),
VectorFieldEngineExport::getArraySizeField< PlaneF >(),
VectorFieldEngineExport::getArrayField< PlaneF >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT(Vector< PolyhedronData::Edge >,
EdgeVector, ,
"")
VectorFieldEngineExport::getElementCountField< PolyhedronData::Edge >(),
VectorFieldEngineExport::getArraySizeField< PolyhedronData::Edge >(),
VectorFieldEngineExport::getArrayField< PolyhedronData::Edge >(),
END_IMPLEMENT_STRUCT;
IMPLEMENT_STRUCT(Vector< const char* >,
StringVector, ,
"")
VectorFieldEngineExport::getElementCountField< const char* >(),
VectorFieldEngineExport::getArraySizeField< const char* >(),
VectorFieldEngineExport::getArrayField< const char* >(),
END_IMPLEMENT_STRUCT;