As a general design, when providing one of these data types to a function, you use the in_ variation (e.g. to pass a 3 value vector, use in_Vector3f).
When a function should return data, rather then using the return value and returning a pointer to an array, the called should provide a pointer to a pre allocated array (or class/structure that implements an array). For example, *out_Vector3f can be implemented as a float[3] array. This is to ensure that implementations which generate the data on request are not requred to keep storage memory for use by their callers, especially when they cannot know when the caller will have finished using the memory. The other alternative is to return a structure (such as out_Vector3f), but having the function copy the value into an existing array is a more optimal solution, rather then using the stack.
Data Structures | |
| union | DigitalSpaces::out_Vector3f |
| Standard 3 value vector. More... | |
| union | DigitalSpaces::out_Vector3d |
| A higher precision version of out_Vector3f. More... | |
| union | DigitalSpaces::out_Vector4f |
| Standard 4 value vector. More... | |
| union | DigitalSpaces::out_Vector4d |
| A higher precision version of out_Vector4f. More... | |
| union | DigitalSpaces::out_Pairf |
| Standard two value pair. More... | |
| struct | DigitalSpaces::out_PositionOrientationf |
| Convenience structure used when dealing with both a position and orientation. More... | |
| struct | DigitalSpaces::out_PositionOrientationd |
| Convenience structure used when dealing with both a position and orientation. More... | |
Typedefs | |
| typedef const out_Vector3f | DigitalSpaces::in_Vector3f |
| Const version of out_Vector3f, used when passing data into a function that won't need to return data. | |
| typedef const out_Vector3d | DigitalSpaces::in_Vector3d |
| Const version of out_Vector3d, used when passing data into a function that won't need to return data. | |
| typedef const out_Vector4f | DigitalSpaces::in_Vector4f |
| Const version of out_Vector4f, used when passing data into a function that won't need to return data. | |
| typedef const out_Vector4d | DigitalSpaces::in_Vector4d |
| Const version of out_Vector4d, used when passing data into a function that won't need to return data. | |
| typedef const out_Pairf | DigitalSpaces::in_Pairf |
| Const version of out_Pairf, used when passing data into a function that won't need to return data. | |
| typedef out_Vector4f | DigitalSpaces::out_Quaternionf |
| Standard Quaternion container. | |
| typedef out_Vector4d | DigitalSpaces::out_Quaterniond |
| Higher precision quaternion container. | |
| typedef const out_Quaternionf | DigitalSpaces::in_Quaternionf |
| Const version of out_Quaternionf, used when passing data into a function that won't need to return data. | |
| typedef const out_Quaterniond | DigitalSpaces::in_Quaterniond |
| Const version of out_Quaterniond, used when passing data into a function that won't need to return data. | |
| typedef const out_PositionOrientationf | DigitalSpaces::in_PositionOrientationf |
| Const version of out_PositionOrientationf, used when passing data into a function that won't need to return data. | |
| typedef const out_PositionOrientationd | DigitalSpaces::in_PositionOrientationd |
| Const version of out_PositionOrientationd, used when passing data into a function that won't need to return data. | |
| typedef out_Vector3f | DigitalSpaces::out_Matrix3f [3] |
| Matrix (3x3) data structure. | |
| typedef const out_Vector3f | DigitalSpaces::in_Matrix3f [3] |
| Const version of out_Vector3f, used when passing data into a function that won't need to return data. | |
| typedef out_Vector4f | DigitalSpaces::out_Matrix4f [4] |
| Matrix (4x4) data structure. | |
| typedef const out_Matrix4f | DigitalSpaces::in_Matrix4f |
| Const version of out_Matrix4f, used when passing data into a function that won't need to return data. | |
| typedef const out_Vector3f DigitalSpaces::in_Matrix3f[3] |
Const version of out_Vector3f, used when passing data into a function that won't need to return data.
| typedef const out_Matrix4f DigitalSpaces::in_Matrix4f |
Const version of out_Matrix4f, used when passing data into a function that won't need to return data.
| typedef const out_Pairf DigitalSpaces::in_Pairf |
Const version of out_Pairf, used when passing data into a function that won't need to return data.
| typedef const out_PositionOrientationd DigitalSpaces::in_PositionOrientationd |
Const version of out_PositionOrientationd, used when passing data into a function that won't need to return data.
| typedef const out_PositionOrientationf DigitalSpaces::in_PositionOrientationf |
Const version of out_PositionOrientationf, used when passing data into a function that won't need to return data.
| typedef const out_Quaterniond DigitalSpaces::in_Quaterniond |
Const version of out_Quaterniond, used when passing data into a function that won't need to return data.
| typedef const out_Quaternionf DigitalSpaces::in_Quaternionf |
Const version of out_Quaternionf, used when passing data into a function that won't need to return data.
| typedef const out_Vector3d DigitalSpaces::in_Vector3d |
Const version of out_Vector3d, used when passing data into a function that won't need to return data.
| typedef const out_Vector3f DigitalSpaces::in_Vector3f |
Const version of out_Vector3f, used when passing data into a function that won't need to return data.
| typedef const out_Vector4d DigitalSpaces::in_Vector4d |
Const version of out_Vector4d, used when passing data into a function that won't need to return data.
| typedef const out_Vector4f DigitalSpaces::in_Vector4f |
Const version of out_Vector4f, used when passing data into a function that won't need to return data.
| typedef out_Vector3f DigitalSpaces::out_Matrix3f[3] |
Matrix (3x3) data structure.
| typedef out_Vector4f DigitalSpaces::out_Matrix4f[4] |
Matrix (4x4) data structure.
| typedef out_Vector4d DigitalSpaces::out_Quaterniond |
| typedef out_Vector4f DigitalSpaces::out_Quaternionf |
Standard Quaternion container.
Quaternions are the storage method of choice for holding and altering orientations.
[0] w [1] x [2] y [3] z
1.5.6