VR-Link API Documentation for HLA 1.3
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
uuidRecord.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
10 #include <vl/packets/uuidRecordP.h>
11 #include <vlutil/vlUuid.h>
12 
14 
15 
17 {
18 public:
19 
21  DtUuidRecord();
22 
24  DtUuidRecord(unsigned int dataType);
25 
27  DtUuidRecord(const DtUuidRecord& orig);
28 
30  DtUuidRecord(void* netBuffer, unsigned int size);
31 
33  virtual ~DtUuidRecord();
34 
36  virtual bool operator==(const DtUuidRecord& other);
37 
39  virtual bool operator==(const DtStandardVariableRecord& other);
40 
42 
43  virtual unsigned int recordType() const;
44  virtual void setRecordType(unsigned int recordType);
46 
48 
49  virtual unsigned int recordLength() const;
51  virtual void setRecordLength(unsigned int recordLength);
53 
55 
56  const virtual DtVrlUuid& uuid() const;
57 
58  virtual void setUuid(DtVrlUuid uuid);
60 
62  virtual void printData() const;
63 
65  virtual void printDataToStream(std::ostream& stream) const;
66 
67  // Writes the network representation to the given address.
68  // The assumption is that this memory is allocated and is of the proper size.
69  virtual void writeRecord(void* addr) const;
70 
73  virtual void setFromNet(const void* netRecord, unsigned int length, DtStandardVariableRetCode* retCode = NULL);
74 
76  virtual unsigned unpaddedNetsize() const;
77 
79  virtual unsigned int netSize();
80 
82  virtual DtStandardVariableRecord* clone() const;
83 
85  static DtStandardVariableRecord* create(void* addr, unsigned int length);
86 
88  static unsigned int recordTypeToUseUuidRecord();
89 
91  static unsigned int recordTypeToUseSourceUnitRecord();
92 
94  static void setRecordTypeToUse(unsigned int typeToUse);
95 
96 
97 protected:
100  static const unsigned int theMinimumSize;
101 };
This file declares DtNetUuidRecord DtNetUuidRecord is an attribute record struct containing a 16 byte...
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual unsigned unpaddedNetsize() const =0
This is the network size of the record without padding.
static const unsigned int theMinimumSize
Definition: uuidRecord.h:100
virtual unsigned int netSize()
Returns the size of the network representation (including padding bytes)
DtNetUuidRecord myNetUuidRecord
Definition: uuidRecord.h:99
virtual DtStandardVariableRecord * clone() const =0
Clone.
virtual void setRecordLength(unsigned int recordLength)=0
Must include size of record header and padding to 8 bytes.
Variable record for sending a single Uuid and used for UniqueID record and Source Unit Record...
Definition: uuidRecord.h:16
virtual void printData() const
Prints the data to DtInfo.
virtual void printDataToStream(std::ostream &stream) const =0
Prints the data to the specified stream.
virtual bool operator==(const DtStandardVariableRecord &other)=0
Equals operator.
Definition: uuidRecordP.h:16
A Universally Unique Identifier DtVrlUuid stores a 16byte encoded UUID string.
Definition: vlUuid.h:28
virtual void writeRecord(void *addr) const =0
virtual unsigned int recordLength() const =0
Get/Set Record Length.
virtual unsigned int recordType() const =0
Get/Set Record Type.
virtual void setRecordType(unsigned int recordType)=0
Get/Set Record Type.
DtVrlUuid myVrlUuid
Definition: uuidRecord.h:98
virtual void setFromNet(const void *netRecord, unsigned int length, DtStandardVariableRetCode *retCode=NULL)=0
Sets the record from Network Representation from the given location.
Definition: standardVariableRecord.h:22
DtStandardVariableRetCode
Definition: standardVariableRecord.h:14
Contains the DtVrlUuid class declaration/definition.
This file contains typedefs for machine dependant types.

Document ID: Generated on Wed Mar 27 02:04:30 EDT 2024 from SVN revision 264570
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)