CoreDX DDS C Reference Manual
Public Attributes | Related Functions | List of all members
DDS_TypeDescriptor Struct Reference

A DDS_TypeDescriptor comprises the state of a type. More...

Public Attributes

DDS_TypeKind kind
 the 'kind' of this type
 
DDS_ObjectName name
 the 'name' of this type
 
DDS_DynamicType base_type
 the 'base_type' of this type More...
 
DDS_DynamicType discriminator_type
 If this descriptor represents a union type, this field indicates the type of the discriminator of the union.
 
DDS_BoundSeq bound
 The bound property indicates the bound of collection and similar types. More...
 
DDS_DynamicType element_type
 If this descriptor represents an array, sequence, or string type, this property indicates the element type of the collection. More...
 
DDS_DynamicType key_element_type
 If this descriptor represents a map type, this property indicates the value element type of the map. More...
 

Related Functions

(Note that these are not member functions.)

DDS_ReturnCode_t DDS_TypeDescriptor_copy_from (DDS_TypeDescriptor *to, const DDS_TypeDescriptor *from)
 Overwrite the contents of this descriptor with those of another descriptor. More...
 
unsigned char DDS_TypeDescriptor_equals (const DDS_TypeDescriptor *td, const DDS_TypeDescriptor *other)
 Compare two DDS_TypeDescriptor's. More...
 
unsigned char DDS_TypeDescriptor_is_consistent (const DDS_TypeDescriptor *td)
 Indicates whether the states of all of this descriptor’s properties are consistent. More...
 

Detailed Description

A DDS_TypeDescriptor comprises the state of a type.

Member Data Documentation

DDS_DynamicType DDS_TypeDescriptor::base_type

the 'base_type' of this type

  • If this descriptor represents a structure type, base_type indicates the supertype of that type. A nil value of this property indicates that the structure type has no supertype.
  • If this descriptor represents an alias type, base_type indicates the type being aliased. A nil value for this property is not considered consistent.

In all other cases, a consistent descriptor shall have a nil value for this property.

DDS_BoundSeq DDS_TypeDescriptor::bound

The bound property indicates the bound of collection and similar types.

  • If this descriptor represents an array type, the length of the property value indicates the number of dimensions in the array, and each value indicates the bound of the corresponding dimension.
  • If this descriptor represents a sequence, map, bit set, or string type, the length of the property value is one and the integral value in that property indicates the bound of the collection.

In all other cases, a consistent descriptor shall have a nil value for this property.

DDS_DynamicType DDS_TypeDescriptor::element_type

If this descriptor represents an array, sequence, or string type, this property indicates the element type of the collection.

It must not be nil for the descriptor to be consistent. If this descriptor represents a map type, this property indicates the value element type of the map. It must not be nil for the descriptor to be consistent.

If this descriptor represents a bit set type, this property must indicate a Boolean type for the descriptor to be consistent.

If this descriptor represents any other kind of type, this property must be nil for the descriptor to be consistent.

DDS_DynamicType DDS_TypeDescriptor::key_element_type

If this descriptor represents a map type, this property indicates the value element type of the map.

It must not be nil for the descriptor to be consistent.

If this descriptor represents any other kind of type, this property must be nil for the descriptor to be consistent.


© 2009-2017 Twin Oaks Computing, Inc
Castle Rock, CO 80108
All rights reserved.