Download presentation
Presentation is loading. Please wait.
1
RPR FOM v2.0 Datatype Naming
SISO RPR FOM PDG
2
IEEE 1516.2-2010 XML naming conventions Further restrictions:
No period (full stop) No colon Not beginning with “hla” (any case combination) Case-sensitive Not “na” (any case combination)
3
IEEE 1516.2-2010 (cont’d) Mandatory datatypes (included in MIM) Basic
HLAinteger16BE, HLAinteger32BE, HLAinteger64BE, HLAfloat32BE, HLAfloat64BE, HLAoctetPairBE, HLAinteger16LE, HLAinteger32LE, HLAinteger64LE, HLAfloat32LE, HLAfloat64LE, HLAoctetPairLE, HLAoctet Simple HLAASCIIchar, HLAunicodeChar, HLAbyte, HLAinteger64time, HLAfloat64time Enumerated HLAboolean Array HLAASCIIstring, HLAunicodeString, HLAopaqueData, HLAtoken
4
IEEE 1516.2-2010 (cont’d) Predefined encodings Array Fixed Record
HLAfixedArray, HLAvariableArray Fixed Record HLAfixedRecord Variant Record HLAvariantRecord
5
RPR General Rules The purpose of the naming convention is to support semantic interoperability, in particular the ability to understand the class definitions without the need to look up the exact definition of the datatypes Prefix “RPR” for additional basic datatypes and encodings (“HLA” not allowed) CamelCase Exception: first letter after RPR is lower case (matching 1516 convention) To be discussed: use of underscore (_) (subsequent slides)
6
RPR Basic Datatypes RPR[unsigned]<type><size><encoding> [unsigned] when applicable, default is signed <size> in bits <encoding> BE: Big Endian LE: Little Endian (not used) if omitted then uninterpreted All additional basic datatypes defined in Base module
7
RPR Basic Datatypes (cont’d)
RPRunsignedInteger8BE (was UnsignedInteger8BE) RPRunsignedInteger16BE (was UnsignedInteger16BE) RPRunsignedInteger32BE (was UnsignedInteger32BE) RPRunsignedInteger64BE (was UnsignedInteger64BE)
8
RPR Simple Datatypes <property><unit><type><size> <property> indicates the meaning of the data May be omitted for dimensionless quantities (e.g. counters), or when the datatype can represent different properties (e.g. Value in ArticulatedPartsStruct) <unit> of the property Omitted when the unit is NA <type> of the basic datatype representation <size> of the basic datatype representation Encoding in the name is not used since only BE is used
9
RPR Simple Datatypes (cont’d)
Propery-less datatypes defined in Base module To be discussed: <property><unit><type><size> or <property>_<unit>_<type><size> E.g. LengthMeterFloat32 or Length_Meter_Float32 <unit> omitted when SI unit and clear from <property> ? E.g. LengthFloat32 instead of LengthMeterFloat32 (but always LengthDecimeterFloat32)
10
RPR Simple Datatypes (cont’d)
To be discussed (cont’d): <unit> full or abbreviated ? (only makes sense when using _) E.g. Length_Meter_Float32 or Length_m_Float32 <unit> singular or plural ? E.g. LengthMeterFloat32 or LengthMetersFloat32 <type> full or abbreviated ? E.g. TimeMillisecondUnsignedInteger32 or TimeMillisecondUInt32
11
RPR Enumerated Datatypes
<property>Enum<size> <property> indicates the meaning of the data <size> of the basic datatype representation Also specifying 8 when using HLAoctet To be discussed: <property>Enum<size> or <property>_Enum<size> Note: currently the latter is not in use
12
RPR Array Datatypes <datatype>[encoding]Array[cardinality]
<datatype> of the element datatype [encoding] Omitted when predefined (HLAfixedArray, HLAvariableArray) “Lengthless” for RPRlengthlessVariableArray “NullTerminated” for RPRnullTerminatedArray “UnpaddedLengthless” for RPRunpaddedLengthlessVariableArray (probably not needed) “Padding32” for RPRpaddingTo32Array “Padding64” for RPRpaddingTo64Array
13
RPR Array Datatypes (cont’d)
[cardinality] Omitted when Dynamic “1Plus” for cardinality [ ] (1+) Size for HLAfixedArray Defined in same module as <datatype> Notes: RPRlengthlessVariableArray was HLAlengthlessVarArray RPRnullTerminatedArray was HLAnullTerminatedArray RPRunpaddedLengthlessVariableArray was HLAunpaddedLengthlessVarArray RPRpaddingTo32Array was HLApaddingTo32Array RPRpaddingTo64Array was HLApaddingTo64Array
14
RPR Array Datatypes (cont’d)
To be discussed: <datatype>[encoding]Array[cardinality] or [encoding]Array[cardinality]Of<datatype> or [encoding]ArrayOf<datatype>[cardinality] With or without _ ? (e.g. <datatype>_[encoding]Array[cardinality]) Note: currently not in use
15
RPR Array Datatypes (cont’d)
To be discussed (cont’d): Keep RPR FOM v1/v2D17 names or rename according to convention ? Current (draft19.2) exceptions: NullTerminatedASCIIString RTIobjectId AttributeValueSetStruct RecordSetList VariableDatumSetStruct
16
RPR Fixed Record Datatypes
<property>Struct <property> indicates the meaning of the data
17
RPR Variant Record Datatypes
<property>VariantStruct <property> indicates the meaning of the data To be discussed: <property>VariantStruct or <property>Struct With or without _ ? (e.g. <property>_VariantStruct) Note: currently not in use
18
RPR Variant Record Datatypes (cont’d)
To be discussed (cont’d): Keep RPR FOM v1/v2D17 names or rename according to convention ? Mostly using <property>Struct, once <property>Variant
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.