#ifndef __cxPick_API_H_ #define __cxPick_API_H_ #ifdef __cplusplus "C" { #endif #include <stdio.h> #if defined(__sun) || defined(WIN32)
cxPick* cxPickAlloc( signed int NumObjectHits );
cxPick* cxPickCopy( cxPick *src );
cxPick* cxPickDup( cxPick *src );
signed long cxPickEventDataGet( cxPick *src, cxErrorCode *ec );
void cxPickEventDataSet( cxPick *src, signed long val, cxErrorCode *ec );
signed int cxPickEventTypeGet( cxPick *src, cxErrorCode *ec );
void cxPickEventTypeSet( cxPick *src, signed int val, cxErrorCode *ec );
float* cxPickHitColorGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitColorLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitColorRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitColorSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitConePartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitConePartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitCylinderPartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitCylinderPartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
signed long* cxPickHitFaceIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitFaceIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitFaceIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec );
void cxPickHitFaceIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitFaceNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitFaceNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitFaceNormalsRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitFaceNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitFaceNumVerticesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitFaceNumVerticesSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitFacePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitFacePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitFacePointsRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitFacePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitFlagsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitFlagsSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitGlobalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitGlobalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitGlobalTransformRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitGlobalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitIdGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitIdSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
cxstring * cxPickHitLabelGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLabelRem( cxPick *src, cxstring * *val, cxErrorCode *ec );
void cxPickHitLabelSet( cxPick *src, cxstring * val, long HitsArrayInd, cxErrorCode *ec );
signed long* cxPickHitLineIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitLineIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLineIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec );
void cxPickHitLineIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitLineNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitLineNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLineNormalsRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitLineNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitLinePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitLinePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLinePointsRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitLinePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitLocalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitLocalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLocalTransformRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitLocalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitLocationGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitLocationLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitLocationRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitLocationSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
float* cxPickHitNormalGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitNormalLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitNormalRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickHitNormalSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec );
cxPickObject cxPickHitObjectTypeGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitObjectTypeSet( cxPick *src, cxPickObject val, long HitsArrayInd, cxErrorCode *ec );
signed long cxPickHitPointIndexGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec );
void cxPickHitPointIndexSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec );
long cxPickHitsArrayLen( cxPick *src, cxErrorCode *ec );
void cxPickHitsArrayRem( cxPick *src, cxPickHit* *val, cxErrorCode *ec );
signed long cxPickModifierKeysGet( cxPick *src, cxErrorCode *ec );
void cxPickModifierKeysSet( cxPick *src, signed long val, cxErrorCode *ec );
signed int cxPickNumObjectHitsGet( cxPick *src, cxErrorCode *ec );
void cxPickNumObjectHitsSet( cxPick *src, signed int val, cxErrorCode *ec );
signed int* cxPickPositionArrayGet( cxPick *src, cxErrorCode *ec );
long cxPickPositionArrayLen( cxPick *src, cxErrorCode *ec );
void cxPickPositionArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec );
void cxPickPositionArraySet( cxPick *src, signed int* val, cxErrorCode *ec );
float* cxPickProjectionMatrixGet( cxPick *src, cxErrorCode *ec );
long cxPickProjectionMatrixLen( cxPick *src, cxErrorCode *ec );
void cxPickProjectionMatrixRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickProjectionMatrixSet( cxPick *src, float* val, cxErrorCode *ec );
float* cxPickRayDirectionGet( cxPick *src, cxErrorCode *ec );
long cxPickRayDirectionLen( cxPick *src, cxErrorCode *ec );
void cxPickRayDirectionRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickRayDirectionSet( cxPick *src, float* val, cxErrorCode *ec );
float* cxPickRayOriginGet( cxPick *src, cxErrorCode *ec );
long cxPickRayOriginLen( cxPick *src, cxErrorCode *ec );
void cxPickRayOriginRem( cxPick *src, float* *val, cxErrorCode *ec );
void cxPickRayOriginSet( cxPick *src, float* val, cxErrorCode *ec );
cxPick* cxPickRead( FILE *fd );
signed int* cxPickWindowSizeArrayGet( cxPick *src, cxErrorCode *ec );
long cxPickWindowSizeArrayLen( cxPick *src, cxErrorCode *ec );
void cxPickWindowSizeArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec );
void cxPickWindowSizeArraySet( cxPick *src, signed int* val, cxErrorCode *ec );
void cxPickWrite( FILE *fd, int mode, cxPick *src );
#ifndef __cxPick_API_H_ #define __cxPick_API_H_ #ifdef __cplusplus "C" { #endif #include <stdio.h> #if defined(__sun) || defined(WIN32)
integer function cxPickAlloc( NumObjectHits )
integer function cxPickCopy( src )
integer function cxPickDup( src )
integer function cxPickEventDataGet( src, ec )
subroutine cxPickEventDataSet( src, val, ec )
integer function cxPickEventTypeGet( src, ec )
subroutine cxPickEventTypeSet( src, val, ec )
integer function cxPickHitColorGet( src, HitsArrayInd, ec )
integer function cxPickHitColorLen( src, HitsArrayInd, ec )
subroutine cxPickHitColorRem( src, val, ec )
subroutine cxPickHitColorSet( src, val, HitsArrayInd, ec )
integer function cxPickHitConePartGet( src, HitsArrayInd, ec )
subroutine cxPickHitConePartSet( src, val, HitsArrayInd, ec )
integer function cxPickHitCylinderPartGet( src, HitsArrayInd, ec )
subroutine cxPickHitCylinderPartSet( src, val, HitsArrayInd, ec )
integer function cxPickHitFaceIndicesGet( src, HitsArrayInd, ec )
integer function cxPickHitFaceIndicesLen( src, HitsArrayInd, ec )
subroutine cxPickHitFaceIndicesRem( src, val, ec )
subroutine cxPickHitFaceIndicesSet( src, val, HitsArrayInd, ec )
integer function cxPickHitFaceNormalsGet( src, HitsArrayInd, ec )
integer function cxPickHitFaceNormalsLen( src, HitsArrayInd, ec )
subroutine cxPickHitFaceNormalsRem( src, val, ec )
subroutine cxPickHitFaceNormalsSet( src, val, HitsArrayInd, ec )
integer function cxPickHitFaceNumVerticesGet( src, HitsArrayInd, ec )
subroutine cxPickHitFaceNumVerticesSet( src, val, HitsArrayInd, ec )
integer function cxPickHitFacePointsGet( src, HitsArrayInd, ec )
integer function cxPickHitFacePointsLen( src, HitsArrayInd, ec )
subroutine cxPickHitFacePointsRem( src, val, ec )
subroutine cxPickHitFacePointsSet( src, val, HitsArrayInd, ec )
integer function cxPickHitFlagsGet( src, HitsArrayInd, ec )
subroutine cxPickHitFlagsSet( src, val, HitsArrayInd, ec )
integer function cxPickHitGlobalTransformGet( src, HitsArrayInd, ec )
integer function cxPickHitGlobalTransformLen( src, HitsArrayInd, ec )
subroutine cxPickHitGlobalTransformRem( src, val, ec )
subroutine cxPickHitGlobalTransformSet( src, val, HitsArrayInd, ec )
integer function cxPickHitIdGet( src, HitsArrayInd, ec )
subroutine cxPickHitIdSet( src, val, HitsArrayInd, ec )
subroutine cxPickHitLabelGet( src, HitsArrayInd, ec , retval)
subroutine cxPickHitLabelRem( src, val, ec )
subroutine cxPickHitLabelSet( src, val, HitsArrayInd, ec )
integer function cxPickHitLineIndicesGet( src, HitsArrayInd, ec )
integer function cxPickHitLineIndicesLen( src, HitsArrayInd, ec )
subroutine cxPickHitLineIndicesRem( src, val, ec )
subroutine cxPickHitLineIndicesSet( src, val, HitsArrayInd, ec )
integer function cxPickHitLineNormalsGet( src, HitsArrayInd, ec )
integer function cxPickHitLineNormalsLen( src, HitsArrayInd, ec )
subroutine cxPickHitLineNormalsRem( src, val, ec )
subroutine cxPickHitLineNormalsSet( src, val, HitsArrayInd, ec )
integer function cxPickHitLinePointsGet( src, HitsArrayInd, ec )
integer function cxPickHitLinePointsLen( src, HitsArrayInd, ec )
subroutine cxPickHitLinePointsRem( src, val, ec )
subroutine cxPickHitLinePointsSet( src, val, HitsArrayInd, ec )
integer function cxPickHitLocalTransformGet( src, HitsArrayInd, ec )
integer function cxPickHitLocalTransformLen( src, HitsArrayInd, ec )
subroutine cxPickHitLocalTransformRem( src, val, ec )
subroutine cxPickHitLocalTransformSet( src, val, HitsArrayInd, ec )
integer function cxPickHitLocationGet( src, HitsArrayInd, ec )
integer function cxPickHitLocationLen( src, HitsArrayInd, ec )
subroutine cxPickHitLocationRem( src, val, ec )
subroutine cxPickHitLocationSet( src, val, HitsArrayInd, ec )
integer function cxPickHitNormalGet( src, HitsArrayInd, ec )
integer function cxPickHitNormalLen( src, HitsArrayInd, ec )
subroutine cxPickHitNormalRem( src, val, ec )
subroutine cxPickHitNormalSet( src, val, HitsArrayInd, ec )
integer function cxPickHitObjectTypeGet( src, HitsArrayInd, ec )
subroutine cxPickHitObjectTypeSet( src, val, HitsArrayInd, ec )
integer function cxPickHitPointIndexGet( src, HitsArrayInd, ec )
subroutine cxPickHitPointIndexSet( src, val, HitsArrayInd, ec )
integer function cxPickHitsArrayLen( src, ec )
subroutine cxPickHitsArrayRem( src, val, ec )
integer function cxPickModifierKeysGet( src, ec )
subroutine cxPickModifierKeysSet( src, val, ec )
integer function cxPickNumObjectHitsGet( src, ec )
subroutine cxPickNumObjectHitsSet( src, val, ec )
integer function cxPickPositionArrayGet( src, ec )
integer function cxPickPositionArrayLen( src, ec )
subroutine cxPickPositionArrayRem( src, val, ec )
subroutine cxPickPositionArraySet( src, val, ec )
integer function cxPickProjectionMatrixGet( src, ec )
integer function cxPickProjectionMatrixLen( src, ec )
subroutine cxPickProjectionMatrixRem( src, val, ec )
subroutine cxPickProjectionMatrixSet( src, val, ec )
integer function cxPickRayDirectionGet( src, ec )
integer function cxPickRayDirectionLen( src, ec )
subroutine cxPickRayDirectionRem( src, val, ec )
subroutine cxPickRayDirectionSet( src, val, ec )
integer function cxPickRayOriginGet( src, ec )
integer function cxPickRayOriginLen( src, ec )
subroutine cxPickRayOriginRem( src, val, ec )
subroutine cxPickRayOriginSet( src, val, ec )
integer function cxPickRead( fd )
integer function cxPickWindowSizeArrayGet( src, ec )
integer function cxPickWindowSizeArrayLen( src, ec )
subroutine cxPickWindowSizeArrayRem( src, val, ec )
subroutine cxPickWindowSizeArraySet( src, val, ec )
subroutine cxPickWrite( fd, mode, src )
For example, assuming that the cxPick.t file exists, you would take the following steps:
echo cxPick > TYPES
cxmkmf
make
Now your automatically generated code will reside in
cxPick.api.c.
Note that this process will create several files in the local directory, so it is often helpful to use a separate directory for types, just as modules are developed in their own directories.
signed long cxPickEventDataGet( cxPick *src, cxErrorCode *ec ); signed int cxPickEventTypeGet( cxPick *src, cxErrorCode *ec ); float* cxPickHitColorGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitConePartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitCylinderPartGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitFaceIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFaceNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFaceNumVerticesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitFacePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitFlagsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitGlobalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitIdGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); cxstring * cxPickHitLabelGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long* cxPickHitLineIndicesGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLineNormalsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLinePointsGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocalTransformGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitLocationGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); float* cxPickHitNormalGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); cxPickObject cxPickHitObjectTypeGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickHitPointIndexGet( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); signed long cxPickModifierKeysGet( cxPick *src, cxErrorCode *ec ); signed int cxPickNumObjectHitsGet( cxPick *src, cxErrorCode *ec ); signed int* cxPickPositionArrayGet( cxPick *src, cxErrorCode *ec ); float* cxPickProjectionMatrixGet( cxPick *src, cxErrorCode *ec ); float* cxPickRayDirectionGet( cxPick *src, cxErrorCode *ec ); float* cxPickRayOriginGet( cxPick *src, cxErrorCode *ec ); signed int* cxPickWindowSizeArrayGet( cxPick *src, cxErrorCode *ec );
integer function cxPickEventDataGet( src, ec ) integer function cxPickEventTypeGet( src, ec ) integer function cxPickHitColorGet( src, HitsArrayInd, ec ) integer function cxPickHitConePartGet( src, HitsArrayInd, ec ) integer function cxPickHitCylinderPartGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitFaceNumVerticesGet( src, HitsArrayInd, ec ) integer function cxPickHitFacePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitFlagsGet( src, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitIdGet( src, HitsArrayInd, ec ) subroutine cxPickHitLabelGet( src, HitsArrayInd, ec , retval) integer function cxPickHitLineIndicesGet( src, HitsArrayInd, ec ) integer function cxPickHitLineNormalsGet( src, HitsArrayInd, ec ) integer function cxPickHitLinePointsGet( src, HitsArrayInd, ec ) integer function cxPickHitLocalTransformGet( src, HitsArrayInd, ec ) integer function cxPickHitLocationGet( src, HitsArrayInd, ec ) integer function cxPickHitNormalGet( src, HitsArrayInd, ec ) integer function cxPickHitObjectTypeGet( src, HitsArrayInd, ec ) integer function cxPickHitPointIndexGet( src, HitsArrayInd, ec ) integer function cxPickModifierKeysGet( src, ec ) integer function cxPickNumObjectHitsGet( src, ec ) integer function cxPickPositionArrayGet( src, ec ) integer function cxPickProjectionMatrixGet( src, ec ) integer function cxPickRayDirectionGet( src, ec ) integer function cxPickRayOriginGet( src, ec ) integer function cxPickWindowSizeArrayGet( src, ec )
void cxPickEventDataSet( cxPick *src, signed long val, cxErrorCode *ec ); void cxPickEventTypeSet( cxPick *src, signed int val, cxErrorCode *ec ); void cxPickHitColorSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitConePartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitCylinderPartSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFaceNumVerticesSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFacePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitFlagsSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitGlobalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitIdSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLabelSet( cxPick *src, cxstring * val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineIndicesSet( cxPick *src, signed long* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLineNormalsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLinePointsSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocalTransformSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitLocationSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitNormalSet( cxPick *src, float* val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitObjectTypeSet( cxPick *src, cxPickObject val, long HitsArrayInd, cxErrorCode *ec ); void cxPickHitPointIndexSet( cxPick *src, signed long val, long HitsArrayInd, cxErrorCode *ec ); void cxPickModifierKeysSet( cxPick *src, signed long val, cxErrorCode *ec ); void cxPickNumObjectHitsSet( cxPick *src, signed int val, cxErrorCode *ec ); void cxPickPositionArraySet( cxPick *src, signed int* val, cxErrorCode *ec ); void cxPickProjectionMatrixSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickRayDirectionSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickRayOriginSet( cxPick *src, float* val, cxErrorCode *ec ); void cxPickWindowSizeArraySet( cxPick *src, signed int* val, cxErrorCode *ec );
subroutine cxPickEventDataSet( src, val, ec ) subroutine cxPickEventTypeSet( src, val, ec ) subroutine cxPickHitColorSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitConePartSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitCylinderPartSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceIndicesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceNormalsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFaceNumVerticesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFacePointsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitFlagsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitGlobalTransformSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitIdSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLabelSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLineIndicesSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLineNormalsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLinePointsSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLocalTransformSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitLocationSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitNormalSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitObjectTypeSet( src, val, HitsArrayInd, ec ) subroutine cxPickHitPointIndexSet( src, val, HitsArrayInd, ec ) subroutine cxPickModifierKeysSet( src, val, ec ) subroutine cxPickNumObjectHitsSet( src, val, ec ) subroutine cxPickPositionArraySet( src, val, ec ) subroutine cxPickProjectionMatrixSet( src, val, ec ) subroutine cxPickRayDirectionSet( src, val, ec ) subroutine cxPickRayOriginSet( src, val, ec ) subroutine cxPickWindowSizeArraySet( src, val, ec )
long cxPickHitColorLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFaceNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitFacePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitGlobalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineIndicesLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLineNormalsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLinePointsLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocalTransformLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitLocationLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitNormalLen( cxPick *src, long HitsArrayInd, cxErrorCode *ec ); long cxPickHitsArrayLen( cxPick *src, cxErrorCode *ec ); long cxPickPositionArrayLen( cxPick *src, cxErrorCode *ec ); long cxPickProjectionMatrixLen( cxPick *src, cxErrorCode *ec ); long cxPickRayDirectionLen( cxPick *src, cxErrorCode *ec ); long cxPickRayOriginLen( cxPick *src, cxErrorCode *ec ); long cxPickWindowSizeArrayLen( cxPick *src, cxErrorCode *ec );
integer function cxPickHitColorLen( src, HitsArrayInd, ec ) integer function cxPickHitFaceIndicesLen( src, HitsArrayInd, ec ) integer function cxPickHitFaceNormalsLen( src, HitsArrayInd, ec ) integer function cxPickHitFacePointsLen( src, HitsArrayInd, ec ) integer function cxPickHitGlobalTransformLen( src, HitsArrayInd, ec ) integer function cxPickHitLineIndicesLen( src, HitsArrayInd, ec ) integer function cxPickHitLineNormalsLen( src, HitsArrayInd, ec ) integer function cxPickHitLinePointsLen( src, HitsArrayInd, ec ) integer function cxPickHitLocalTransformLen( src, HitsArrayInd, ec ) integer function cxPickHitLocationLen( src, HitsArrayInd, ec ) integer function cxPickHitNormalLen( src, HitsArrayInd, ec ) integer function cxPickHitsArrayLen( src, ec ) integer function cxPickPositionArrayLen( src, ec ) integer function cxPickProjectionMatrixLen( src, ec ) integer function cxPickRayDirectionLen( src, ec ) integer function cxPickRayOriginLen( src, ec ) integer function cxPickWindowSizeArrayLen( src, ec )
cxPick* cxPickDup( cxPick *src );
integer function cxPickDup( src )
cxPick* cxPickCopy( cxPick *src );
integer function cxPickCopy( src )
cxPick* cxPickAlloc( signed int NumObjectHits );
integer function cxPickAlloc( NumObjectHits )There are two types of allocation routines, those that allocate an array and those that allocate a reference-counted structure.
void cxPickHitColorRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFaceIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitFaceNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitFacePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitGlobalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLabelRem( cxPick *src, cxstring * *val, cxErrorCode *ec ); void cxPickHitLineIndicesRem( cxPick *src, signed long* *val, cxErrorCode *ec ); void cxPickHitLineNormalsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLinePointsRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocalTransformRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitLocationRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitNormalRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickHitsArrayRem( cxPick *src, cxPickHit* *val, cxErrorCode *ec ); void cxPickPositionArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec ); void cxPickProjectionMatrixRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayDirectionRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickRayOriginRem( cxPick *src, float* *val, cxErrorCode *ec ); void cxPickWindowSizeArrayRem( cxPick *src, signed int* *val, cxErrorCode *ec );
cxPick* cxPickRead( FILE *fd );
integer function cxPickRead( fd )
void cxPickWrite( FILE *fd, int mode, cxPick *src );
subroutine cxPickWrite( fd, mode, src )
shared root typedef struct
{
int eventType "Event Type";
long eventData "Event Data";
long eventModifiers "Modifier Keys";
int position[2] "Position Array";
int windowSize[2] "Window Size Array";
float origin[3] "Ray Origin";
float direction[3] "Ray Direction";
float projectionMatrix[4, 4] "Projection Matrix";
int numHits "Num Object Hits";
cxPickHit hit[numHits] "Hits Array";
} cxPick;
typedef struct
{
long id "Hit Id";
long validInfo "Hit Flags";
float point[3] "Hit Location";
float normal[3] "Hit Normal";
float color[3] "Hit Color";
string label "Hit Label";
float localTransform[4, 4] "Hit Local Transform";
float globalTransform[4, 4] "Hit Global Transform";
cxPickObject objectType "Hit Object Type";
switch (objectType) {
case cx_pick_point:
long index "Hit Point Index";
case cx_pick_line:
long index[2] "Hit Line Indices";
float point[2, 3] "Hit Line Points";
float normal[2, 3] "Hit Line Normals";
case cx_pick_face:
long nvertices "Hit Face NumVertices";
long index[nvertices] "Hit Face Indices";
float point[nvertices, 3] "Hit Face Points";
float normal[nvertices, 3] "Hit Face Normals";
case cx_pick_cone:
long part "Hit Cone Part";
case cx_pick_cylinder:
long part "Hit Cylinder Part";
} o;
} cxPickHit;
typedef enum {
cx_pick_none,
cx_pick_point,
cx_pick_line,
cx_pick_face,
cx_pick_sphere,
cx_pick_cone,
cx_pick_cylinder,
cx_pick_nurb,
cx_pick_splat,
cx_pick_other
} cxPickObject;