VR-Link API Documentation for DIS
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
subsurfaceLayerRecord.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vl/metocLayerRecord.h>
14 #include <vl/layerStruct.h>
15 #include <vl/waterCurrentStruct.h>
16 
17 
19 {
20 public:
23 
26 
28  DtSubsurfaceLayerRecord(void* netBuffer, unsigned int size);
29 
32 
35 
37  virtual bool operator==(const DtSubsurfaceLayerRecord& record);
38 
40  virtual bool operator==(const DtStandardVariableRecord& other);
41 
43  virtual void setLayerStruct(const DtLayerStruct& layer);
45  virtual const DtLayerStruct layerStruct() const;
47  virtual void setCurrentStruct(const DtWaterCurrentStruct& current);
49  virtual const DtWaterCurrentStruct currentStruct() const;
51  virtual void setSalinity(const DtFloat32& val);
53  virtual const DtFloat32 salinity() const;
55  virtual void setBottomType(const DtSedimentTypeEnum32& val);
57  virtual const DtSedimentTypeEnum32 bottomType() const;
59  virtual void setPermeability(const DtFloat32& val);
61  virtual const DtFloat32 permeability() const;
62 
63  // Writes the network representation to the given address.
64  // The assumption is that this memory is allocated and is of the proper size.
65  virtual void writeRecord(void* addr) const;
66 
69  virtual void setFromNet(const void* netRecord, unsigned int length, DtStandardVariableRetCode* retCode = NULL);
70 
72  virtual void printDataToStream(std::ostream& stream) const;
73 
75  virtual unsigned int unpaddedNetsize() const;
76 
78  virtual unsigned int paddedNetSize() const;
79 
81  virtual DtStandardVariableRecord* clone() const;
82 
83 public:
85  static DtStandardVariableRecord* create(void* addr, unsigned int length);
86 
88  static unsigned int recordTypeToUse();
89 
91  static void setRecordTypeToUse(unsigned int typeToUse);
92 
93 protected:
95 
96 protected:
97  static const unsigned int theMinimumSize;
98 
99 };
100 
virtual unsigned int unpaddedNetsize() const
This is the network size of the record without padding.
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
Definition: layerStruct.h:24
static DtStandardVariableRecord * create(void *addr, unsigned int length)
Creator of an unknown record for registering in a factory.
DtSedimentTypeEnum32
Definition: metocEnums.h:132
DtNetSubsurfaceLayerRecord * myRecordPtr
Definition: subsurfaceLayerRecord.h:94
Definition: metocLayerRecord.h:12
This file declares DtNetSubsurfaceLayerRecord.
static unsigned int recordTypeToUse()
Return the METOC Layer record type.
virtual DtStandardVariableRecord * clone() const
Clone.
Definition: waterCurrentStruct.h:24
virtual void setFromNet(const void *netRecord, unsigned int length, DtStandardVariableRetCode *retCode=NULL)
Sets the record from an address and length.
virtual bool operator==(const DtMetocLayerRecord &record)
Equals Operator.
virtual DtMetocLayerRecord & operator=(const DtMetocLayerRecord &record)
Assignment Operator.
static const unsigned int theMinimumSize
Definition: subsurfaceLayerRecord.h:97
Definition: subsurfaceLayerRecordP.h:17
Definition: standardVariableRecord.h:22
Definition: subsurfaceLayerRecord.h:18
DtStandardVariableRetCode
Definition: standardVariableRecord.h:14
virtual void writeRecord(void *addr) const
virtual void printDataToStream(std::ostream &stream) const
Prints the data to the specified stream.
static void setRecordTypeToUse(unsigned int typeToUse)
Set the record type to use.

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)