1 #ifndef COIN_SBTYPEINFO_H 2 #define COIN_SBTYPEINFO_H 62 #include <Inventor/system/inttypes.h> 213 template <
typename T>
216 typedef const T & ParamType;
220 struct SbTypeInfo<float> {
222 typedef Type ParamType;
240 struct SbTypeInfo<double> {
242 typedef Type ParamType;
253 typedef SbDPPlane PlaneType;
254 typedef SbDPLine LineType;
256 typedef SbDPRotation RotationType;
260 struct SbTypeInfo<int8_t> {
262 typedef Type ParamType;
270 struct SbTypeInfo<uint8_t> {
271 typedef uint8_t Type;
272 typedef Type ParamType;
280 struct SbTypeInfo<short> {
282 typedef Type ParamType;
295 struct SbTypeInfo<unsigned short> {
296 typedef unsigned short Type;
297 typedef Type ParamType;
308 struct SbTypeInfo<int32_t> {
309 typedef int32_t Type;
310 typedef Type ParamType;
323 struct SbTypeInfo<uint32_t> {
324 typedef uint32_t Type;
325 typedef Type ParamType;
339 typedef const Type & ParamType;
341 typedef float PrimitiveType;
342 enum { Dimensions = 2 };
353 typedef const Type & ParamType;
355 typedef double PrimitiveType;
356 enum { Dimensions = 2 };
367 typedef Type ParamType;
369 typedef int8_t PrimitiveType;
370 enum { Dimensions = 2 };
379 typedef Type ParamType;
381 typedef uint8_t PrimitiveType;
382 enum { Dimensions = 2 };
388 typedef Type ParamType;
390 typedef short PrimitiveType;
391 enum { Dimensions = 2 };
402 typedef Type ParamType;
404 typedef unsigned short PrimitiveType;
405 enum { Dimensions = 2 };
411 typedef const Type & ParamType;
413 typedef int32_t PrimitiveType;
414 enum { Dimensions = 2 };
425 typedef const Type & ParamType;
427 typedef uint32_t PrimitiveType;
428 enum { Dimensions = 2 };
434 typedef const Type & ParamType;
436 typedef float PrimitiveType;
437 enum { Dimensions = 3 };
448 typedef const Type & ParamType;
450 typedef double PrimitiveType;
451 enum { Dimensions = 3 };
462 typedef Type ParamType;
464 typedef int8_t PrimitiveType;
465 enum { Dimensions = 3 };
474 typedef Type ParamType;
476 typedef uint8_t PrimitiveType;
477 enum { Dimensions = 3 };
483 typedef const Type & ParamType;
485 typedef short PrimitiveType;
486 enum { Dimensions = 3 };
497 typedef const Type & ParamType;
499 typedef unsigned short PrimitiveType;
500 enum { Dimensions = 3 };
506 typedef const Type & ParamType;
508 typedef int32_t PrimitiveType;
509 enum { Dimensions = 3 };
520 typedef const Type & ParamType;
522 typedef uint32_t PrimitiveType;
523 enum { Dimensions = 3 };
529 typedef const Type & ParamType;
531 typedef float PrimitiveType;
532 enum { Dimensions = 4 };
541 typedef const Type & ParamType;
543 typedef double PrimitiveType;
544 enum { Dimensions = 4 };
553 typedef Type ParamType;
555 typedef int8_t PrimitiveType;
556 enum { Dimensions = 4 };
565 typedef Type ParamType;
567 typedef uint8_t PrimitiveType;
568 enum { Dimensions = 4 };
577 typedef const Type & ParamType;
579 typedef short PrimitiveType;
580 enum { Dimensions = 4 };
589 typedef const Type & ParamType;
591 typedef unsigned short PrimitiveType;
592 enum { Dimensions = 4 };
601 typedef const Type & ParamType;
603 typedef int32_t PrimitiveType;
604 enum { Dimensions = 4 };
613 typedef const Type & ParamType;
615 typedef uint32_t PrimitiveType;
616 enum { Dimensions = 4 };
625 typedef const Type & ParamType;
627 typedef float PrimitiveType;
628 enum { Dimensions = 2 };
638 typedef const Type & ParamType;
640 typedef double PrimitiveType;
641 enum { Dimensions = 2 };
651 typedef const Type & ParamType;
653 typedef short PrimitiveType;
654 enum { Dimensions = 2 };
664 typedef const Type & ParamType;
666 typedef int32_t PrimitiveType;
667 enum { Dimensions = 2 };
677 typedef const Type & ParamType;
679 typedef float PrimitiveType;
680 enum { Dimensions = 3 };
690 typedef const Type & ParamType;
692 typedef double PrimitiveType;
693 enum { Dimensions = 3 };
703 typedef const Type & ParamType;
705 typedef short PrimitiveType;
706 enum { Dimensions = 3 };
716 typedef const Type & ParamType;
718 typedef int32_t PrimitiveType;
719 enum { Dimensions = 3 };
729 typedef const Type & ParamType;
731 typedef float PrimitiveType;
732 enum { Dimensions = 3 };
739 struct SbTypeInfo<SbDPPlane> {
740 typedef SbDPPlane Type;
741 typedef const Type & ParamType;
743 typedef double PrimitiveType;
744 enum { Dimensions = 3 };
748 struct SbTypeInfo<
SbLine> {
750 typedef const Type & ParamType;
752 typedef float PrimitiveType;
753 enum { Dimensions = 3 };
757 struct SbTypeInfo<SbDPLine> {
758 typedef SbDPLine Type;
759 typedef const Type & ParamType;
761 typedef double PrimitiveType;
762 enum { Dimensions = 3 };
768 typedef const Type & ParamType;
770 typedef float PrimitiveType;
777 struct SbTypeInfo<SbDPRotation> {
778 typedef SbDPRotation Type;
779 typedef const Type & ParamType;
781 typedef double PrimitiveType;
787 typedef const Type & ParamType;
789 typedef float PrimitiveType;
798 typedef const Type & ParamType;
800 typedef double PrimitiveType;
805 #endif // !COIN_SBTYPEINFO_H The SbVec4s class is a 4 dimensional vector with short integer coordinates.
Definition: SbVec4s.h:37
The SbVec2f class is a 2 dimensional vector with floating point coordinates.
Definition: SbVec2f.h:36
The SoMFFloat class is a container for floating point values.This field is used where nodes...
Definition: SoMFFloat.h:30
The SoSFVec2s class is a container for an SbVec2s vector.This field is used where nodes...
Definition: SoSFVec2s.h:31
The SbColor class contains the red, green and blue components which make up a color value...
Definition: SbColor.h:30
The SoMFColor class is a container for SbColor values.This field is used where nodes, engines or other field containers needs to store multiple color values (i.e. "Red Green Blue" triplets).
Definition: SoMFColor.h:31
The SbBox3s class is a 3 dimensional box with short integer coordinates.This box class is used by oth...
Definition: SbBox3s.h:34
The SoMFVec2i32 class is a container for SbVec2i32 vectors.This field is used where nodes...
Definition: SoMFVec2i32.h:31
The SoSFBox3s class is a container for an SbBox3s vector.This field is used where nodes...
Definition: SoSFBox3s.h:32
The SbVec4f class is a 4 dimensional vector with floating point coordinates.
Definition: SbVec4f.h:34
The SoMFVec3i32 class is a container for SbVec3i32 vectors.This field is used where nodes...
Definition: SoMFVec3i32.h:31
The SbVec3d class is a 3 dimensional vector with double precision floating point coordinates.
Definition: SbVec3d.h:35
The SoSFRotation class is a container for an SbRotation.This field is used where nodes, engines or other field containers needs to store a single rotation definition.
Definition: SoSFRotation.h:31
The SoMFVec4i32 class is a container for SbVec4i32 vectors.This field is used where nodes...
Definition: SoMFVec4i32.h:31
The SoMFVec4b class is a container for SbVec4b vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with four elements.
Definition: SoMFVec4b.h:31
The SbVec2b class is a 2 dimensional vector with 8-bit integer coordinates.
Definition: SbVec2b.h:37
The SoMFPath class is a container for paths.This field container stores an array of pointers to paths...
Definition: SoMFPath.h:35
The SoSFDouble class is a container for a double precision floating point value.This field is used wh...
Definition: SoSFDouble.h:30
The SoMFUShort class is a container for unsigned short integer values.This field supports application...
Definition: SoMFUShort.h:30
The SoSFVec4f class is a container for an SbVec4f vector.This field is used where nodes...
Definition: SoSFVec4f.h:31
The SoMFVec4s class is a container for SbVec4s vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with four elements.
Definition: SoMFVec4s.h:31
The SbBox3f class is an abstraction for an axis aligned 3 dimensional box.This box abstraction class ...
Definition: SbBox3f.h:37
The SoMFVec4ui32 class is a container for SbVec4ui32 vectors.This field is used where nodes...
Definition: SoMFVec4ui32.h:31
The SoSFTrigger class is the "void" class used for detecting field changes.Connect this field to a ma...
Definition: SoSFTrigger.h:32
The SoSFVec2i32 class is a container for an SbVec2i32 vector.This field is used where nodes...
Definition: SoSFVec2i32.h:31
The SbBox2d class is a 2 dimensional box with double precision corner coordinates.This box class is used by many other classes in Coin for data exchange and storage. It provides two box corners with double precision coordinates, which is among other things useful for representing screen or canvas dimensions in normalized coordinates.
Definition: SbBox2d.h:33
The SbColor4f class contains the red, green, blue and alpha components which make up a color value...
Definition: SbColor4f.h:32
The SoSFVec3i32 class is a container for an SbVec3i32 vector.This field is used where nodes...
Definition: SoSFVec3i32.h:31
The SoSFPlane class is a container for an SbPlane value.This field is used where nodes, engines or other field containers needs to store a single definition of a 3D plane.
Definition: SoSFPlane.h:31
The SoMFInt32 class is a container for 32-bit integer values.This field is used where nodes...
Definition: SoMFInt32.h:30
The SoMFVec2b class is a container for SbVec2b vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with two elements.
Definition: SoMFVec2b.h:31
The SoSFVec4i32 class is a container for an SbVec4i32 vector.This field is used where nodes...
Definition: SoSFVec4i32.h:31
The SbVec4b class is a 4 dimensional vector with 8-bit integer coordinates.
Definition: SbVec4b.h:37
The SoSFString class is a container for an SbString.This field is used where nodes, engines or other field containers needs to store a single string.
Definition: SoSFString.h:31
The SoSFVec3d class is a container for an SbVec3d vector.This field is used where nodes...
Definition: SoSFVec3d.h:31
The SoSFUShort class is a container for a unsigned short integer value.This field is used where nodes...
Definition: SoSFUShort.h:30
The SoSFVec2f class is a container for an SbVec2f vector.This field is used where nodes...
Definition: SoSFVec2f.h:31
The SoMFVec2s class is a container for SbVec2s vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with two elements.
Definition: SoMFVec2s.h:31
The SoMFVec4f class is a container for SbVec4f vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with four elements.
Definition: SoMFVec4f.h:31
The SoSFColor class is a container for an SbColor value.This field is used where nodes, engines or other field containers needs to store a single color value (i.e. Red + Green + Blue).
Definition: SoSFColor.h:31
The SoSFShort class is a container for a short integer value.This field is used where nodes...
Definition: SoSFShort.h:30
The SoSFEnum class is a container for an enum value.This field is used where nodes, engines or other field containers needs to store one particular value out of an enumerated set.
Definition: SoSFEnum.h:31
The SbVec2ub class is a 2 dimensional vector with unsigned 32-bit integer coordinates.
Definition: SbVec2ui32.h:37
The SoMFVec2f class is a container for SbVec2f vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with two elements.
Definition: SoMFVec2f.h:31
The SoSFVec3s class is a container for an SbVec3s vector.This field is used where nodes...
Definition: SoSFVec3s.h:31
The SoSFBox2d class is a container for an SbBox2d vector.This field is used where nodes...
Definition: SoSFBox2d.h:31
The SoSFVec3b class is a container for an SbVec3b vector.This field is used where nodes...
Definition: SoSFVec3b.h:31
The SoSFBool class is a container for an SbBool value.This field is used where nodes, engines or other field containers needs to store a boolean on/off or TRUE/FALSE value, like for instance as the "on" field of the SoPointLight, SoSpotLight and SoDirectionalLight node classes.
Definition: SoSFBool.h:30
The SoSFInt32 class is a container for a 32-bit integer value.This field is used where nodes...
Definition: SoSFInt32.h:30
The SbVec3s class is a 3 dimensional vector with short integer coordinates.
Definition: SbVec3s.h:36
The SoSFEngine class is a container for a single engine.This field container stores a pointer to a Co...
Definition: SoSFEngine.h:38
The SbVec4us class is a 4 dimensional vector with unsigned short integer coordinates.
Definition: SbVec4us.h:37
The SbVec3us class is a 3 dimensional vector with unsigned short integer coordinates.
Definition: SbVec3us.h:37
The SbVec2us class is a 2 dimensional vector with unsigned short integer coordinates.
Definition: SbVec2us.h:37
The SoMFVec3d class is a container for SbVec3d vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with three elements.
Definition: SoMFVec3d.h:31
The SoSFNode class is a container for a single node.This field container stores a pointer to a Coin n...
Definition: SoSFNode.h:38
The SbRotation class represents a rotation in 3D space.SbRotation is used extensively throughout the ...
Definition: SbRotation.h:33
The SoMFEnum class is a container for a set of enumerated values.This field is used where nodes...
Definition: SoMFEnum.h:30
The SoSFBox3f class is a container for an SbBox3f vector.This field is used where nodes...
Definition: SoSFBox3f.h:32
The SbBox2s class is a 2 dimensional box with short integer coordinates.This box class is used by oth...
Definition: SbBox2s.h:34
The SoMFString class is a container for SbString values.This field is used where nodes, engines or other field containers needs to store arrays of strings.
Definition: SoMFString.h:31
The SbVec4ui32 class is a 4 dimensional vector with unsigned 32-bit integer coordinates.
Definition: SbVec4ui32.h:37
The SbVec3f class is a 3 dimensional vector with floating point coordinates.
Definition: SbVec3f.h:37
The SoSFUInt32 class is a container for a 32-bit unsigned integer value.This field is used where node...
Definition: SoSFUInt32.h:30
The SoMFShort class is a container for short integer values.This field is used where nodes...
Definition: SoMFShort.h:30
The SbVec2d class is a 2 dimensional vector with double precision floating point coordinates.
Definition: SbVec2d.h:36
The SoSFBox2i32 class is a container for an SbBox2i32 vector.This field is used where nodes...
Definition: SoSFBox2i32.h:31
The SoMFBool class is a container for SbBool values.This field is used where nodes, engines or other field containers needs to store multiple boolean on/off or TRUE/FALSE values.
Definition: SoMFBool.h:30
The SoSFVec4ui32 class is a container for an SbVec4ui32 vector.This field is used where nodes...
Definition: SoSFVec4ui32.h:31
The SoSFVec4d class is a container for an SbVec4d vector.This field is used where nodes...
Definition: SoSFVec4d.h:31
The SoMFVec4ub class is a container for SbVec4ub vectors.This field is used where nodes...
Definition: SoMFVec4ub.h:31
The SoSFBox3i32 class is a container for an SbBox3i32 vector.This field is used where nodes...
Definition: SoSFBox3i32.h:31
The SbVec4i32 class is a 4 dimensional vector with 32-bit integer coordinates.
Definition: SbVec4i32.h:37
The SoSFName class is a container for an SbName.This field is used where nodes, engines or other fiel...
Definition: SoSFName.h:31
The SoMFVec3s class is a container for SbVec3s vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with three elements.
Definition: SoMFVec3s.h:31
The SbBox2f class is a 2 dimensional box with floating point corner coordinates.This box class is use...
Definition: SbBox2f.h:33
The SbLine class represents a line in 3D space.SbLine provides a way of specifying a directed line...
Definition: SbLine.h:32
The SoMFNode class is a container for nodes.This field container stores an array of pointers to nodes...
Definition: SoMFNode.h:32
The SbMatrix class is a 4x4 dimensional representation of a matrix.SbMatrix is used by many other cla...
Definition: SbMatrix.h:37
The SoSFVec4us class is a container for an SbVec4us vector.This field is used where nodes...
Definition: SoSFVec4us.h:31
The SoMFUInt32 class is a container for 32-bit unsigned integer values.This field is used where nodes...
Definition: SoMFUInt32.h:30
The SbVec4d class is a 4 dimensional vector with double precision floating point coordinates.
Definition: SbVec4d.h:34
The SbVec2i32 class is a 2 dimensional vector with 32-bit integer coordinates.
Definition: SbVec2i32.h:39
The SbVec3b class is a 3 dimensional vector with 8-bit integer coordinates.
Definition: SbVec3b.h:37
The SbTime class instances represents time values.SbTime is a convenient way of doing system independ...
Definition: SbTime.h:41
The SoMFPlane class is a container for SbPlane values.This field is used where nodes, engines or other field containers needs to store multiple 3D plane definitions.
Definition: SoMFPlane.h:31
The SoSFVec2d class is a container for an SbVec2d vector.This field is used where nodes...
Definition: SoSFVec2d.h:31
The SbVec3i32 class is a 3 dimensional vector with 32-bit integer coordinates.
Definition: SbVec3i32.h:39
The SoSFPath class is a container for a single path.This field container stores a pointer to a Coin p...
Definition: SoSFPath.h:34
The SoMFRotation class is a container for SbRotation values.This field is used where nodes...
Definition: SoMFRotation.h:31
The SbBox2i32 class is a 2 dimensional box with int32_t coordinates.This box class is used by other c...
Definition: SbBox2i32.h:34
The SoSFBox2s class is a container for an SbBox2s vector.This field is used where nodes...
Definition: SoSFBox2s.h:31
The SbBox3d class is an abstraction for an axis aligned 3 dimensional box.This box abstraction class ...
Definition: SbBox3d.h:37
The SoSFImage class is used to store pixel images.The SoSFImage class provides storage for inline 2D ...
Definition: SoSFImage.h:32
Definition: SbBox3i32.h:35
The SoSFVec4b class is a container for an SbVec4b vector.This field is used where nodes...
Definition: SoSFVec4b.h:31
The SoSFTime class is a container for an SbTime value.This field is used where nodes, engines or other field containers needs to store a single time representation.
Definition: SoSFTime.h:31
The SoMFEngine class is a container for engines.This field container stores an array of pointers to e...
Definition: SoMFEngine.h:32
The SoMFMatrix class is a container for SbMatrix values.This field is used where nodes, engines or other field containers needs to store matrices.
Definition: SoMFMatrix.h:31
The SoMFName class is a container for SbName values.This field is used where nodes, engines or other field containers needs to store arrays of names.
Definition: SoMFName.h:31
The SoMFVec3b class is a container for SbVec3b vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with three elements.
Definition: SoMFVec3b.h:31
The SoSFFloat class is a container for a floating point value.This field is used where nodes...
Definition: SoSFFloat.h:30
The SoSFImage3 class is used to store 3D (volume) images.The SoSFImage3 class provides storage for in...
Definition: SoSFImage3.h:31
The SbPlane class represents a plane in 3D space.SbPlane is used by many other classes in Coin...
Definition: SbPlane.h:34
The SoSFVec3f class is a container for an SbVec3f vector.This field is used where nodes...
Definition: SoSFVec3f.h:31
The SoMFVec4d class is a container for SbVec4d vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with four elements.
Definition: SoMFVec4d.h:31
The SoMFDouble class is a container for double float precision point values.This field is used where ...
Definition: SoMFDouble.h:30
The SoSFVec2b class is a container for an SbVec2b vector.This field is used where nodes...
Definition: SoSFVec2b.h:31
The SoMFBitMask class is a container for a set of bitmasks.This field is used where nodes...
Definition: SoMFBitMask.h:29
The SoSFMatrix class is a container for an SbMatrix.This field is used where nodes, engines or other field containers needs to store a 4x4 matrix.
Definition: SoSFMatrix.h:31
The SbString class is a string class with convenience functions for string operations.This is the class used for storing and working with character strings. It automatically takes care of supporting all the "bookkeeping" tasks usually associated with working with character strings, like memory allocation and deallocation etc.
Definition: SbString.h:42
The SbVec2s class is a 2 dimensional vector with short integer coordinates.This vector class is used ...
Definition: SbVec2s.h:37
The SoSFVec4ub class is a container for an SbVec4ub vector.This field is used where nodes...
Definition: SoSFVec4ub.h:31
The SoMFVec3f class is a container for SbVec3f vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with three elements.
Definition: SoMFVec3f.h:31
The SoMFTime class is a container for SbTime values.This field is used where nodes, engines or other field containers needs to store multiple time representations.
Definition: SoMFTime.h:31
The SbDPMatrix class is a 4x4 dimensional representation of a double-precision matrix.This class is like the SbMatrix class, but uses double-precision floating point values for its elements. For more class documentation, see SbMatrix.
Definition: SbDPMatrix.h:38
The SoMFVec4us class is a container for SbVec4us vectors.This field is used where nodes...
Definition: SoMFVec4us.h:31
The SoSFVec4s class is a container for an SbVec4s vector.This field is used where nodes...
Definition: SoSFVec4s.h:31
The SoMFVec2d class is a container for SbVec2d vectors.This field is used where nodes, engines or other field containers needs to store an array of vectors with two elements.
Definition: SoMFVec2d.h:31
The SbVec4ub class is a 4 dimensional vector with unsigned 8-bit integer coordinates.
Definition: SbVec4ub.h:37
The SbVec3ub class is a 3 dimensional vector with unsigned 8-bit integer coordinates.
Definition: SbVec3ub.h:37
The SbVec2ub class is a 2 dimensional vector with unsigned 8-bit integer coordinates.
Definition: SbVec2ub.h:37
The SoSFBox3d class is a container for an SbBox3d vector.This field is used where nodes...
Definition: SoSFBox3d.h:31
The SbVec3ui32 class is a 3 dimensional vector with unsigned 33-bit integer coordinates.
Definition: SbVec3ui32.h:37
The SbName class stores strings by reference.The class is used by Coin for storing keywords...
Definition: SbName.h:31
The SoSFBox2f class is a container for an SbBox2f vector.This field is used where nodes...
Definition: SoSFBox2f.h:31
The SoSFBitMask class is a container for a set of bit flags.This field is used where nodes...
Definition: SoSFBitMask.h:29