VR-Link API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
metocLayerRecord.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
6 #pragma once
7 
10 
11 
13 {
14 public:
17 
20 
22  DtMetocLayerRecord(void* netBuffer, unsigned int size);
23 
25  virtual DtMetocLayerRecord& operator=(const DtMetocLayerRecord& record);
27  virtual DtStandardVariableRecord& operator=(const DtStandardVariableRecord& other);
28 
30  virtual bool operator==(const DtMetocLayerRecord& record);
32  virtual bool operator==(const DtStandardVariableRecord& other);
33 
35 
36  virtual unsigned int recordType() const;
37  virtual void setRecordType(unsigned int recordType);
39 
41 
42  virtual unsigned int recordLength() const;
44  virtual void setRecordLength(unsigned int length);
46 
47  //All MAK Metoc Layer classes have a priority value.
48  virtual void setPriority(unsigned short priority);
49  virtual unsigned short priority() const;
50 
51  //All MAK Metoc Layer classes have a vrfWeatherAreaIdentifier value.
52  virtual void setVrfWeatherAreaIdentifier(const DtVrlUuid& vrfWeatherAreaId);
53  virtual DtVrlUuid vrfWeatherAreaIdentifier() const;
54 
55  // Writes the network representation to the given address.
56  // The assumption is that this memory is allocated and is of the proper size.
57  virtual void writeRecord(void* addr) const;
58 
61  virtual void setFromNet(const void* netRecord, unsigned int length, DtStandardVariableRetCode* retCode = NULL);
62 
64  virtual void printDataToStream(std::ostream& stream) const;
65 
67  virtual unsigned int unpaddedNetsize() const;
68 
70  virtual DtStandardVariableRecord* clone() const;
71 
72 public:
74  static DtStandardVariableRecord* create(void* addr, unsigned int length);
75 
77  static unsigned int recordTypeToUse();
78 
80  static void setRecordTypeToUse(unsigned int typeToUse);
81 
82 protected:
83  std::vector<char> myRecordBuffer;
84 
85 protected:
86  static const unsigned int theMinimumSize;
87 
88 };
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
virtual unsigned unpaddedNetsize() const =0
This is the network size of the record without padding.
virtual DtStandardVariableRecord * clone() const =0
Clone.
virtual void setRecordLength(unsigned int recordLength)=0
Must include size of record header and padding to 8 bytes.
Definition: metocLayerRecord.h:12
virtual void printDataToStream(std::ostream &stream) const =0
Prints the data to the specified stream.
virtual bool operator==(const DtStandardVariableRecord &other)=0
Equals operator.
This file declares DtNetMetocLayerRecord which is a base class for all other NETN METOC Layer records...
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.
virtual void setFromNet(const void *netRecord, unsigned int length, DtStandardVariableRetCode *retCode=NULL)=0
Sets the record from Network Representation from the given location.
static const unsigned int theMinimumSize
Definition: metocLayerRecord.h:86
Definition: standardVariableRecord.h:23
DtStandardVariableRetCode
Definition: standardVariableRecord.h:15
std::vector< char > myRecordBuffer
Definition: metocLayerRecord.h:83

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)