MAK RTIspy API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HLAfloat64Interval.h
Go to the documentation of this file.
1 #pragma once
2 /***********************************************************************
3  The IEEE hereby grants a general, royalty-free license to copy, distribute,
4  display and make derivative works from this material, for all purposes,
5  provided that any use of the material contains the following
6  attribution: "Reprinted with permission from IEEE 1516.1(TM)-2025".
7  Should you require additional information, contact the Manager, Standards
8  Intellectual Property, IEEE Standards Association (stds-ipr@ieee.org).
9 ***********************************************************************/
10 
12 
13 namespace rti1516_2025
14 {
15  class HLAfloat64IntervalImpl;
16 
18  {
19  public:
20 
21  // Constructors
23 
25  double);
26 
29 
31  const HLAfloat64Interval&);
32 
33  // Destructor
35  noexcept override;
36 
37  // Basic accessors/mutators
38 
39  void setZero () override;
40 
41  bool isZero () const override;
42 
43  void setEpsilon () override;
44 
45  bool isEpsilon () const override;
46 
47  // Operators
48 
51  rti1516_2025::LogicalTimeInterval const & value) override;
52 
55  rti1516_2025::LogicalTimeInterval const & addend) override;
56 
59  rti1516_2025::LogicalTimeInterval const & subtrahend) override;
60 
62  bool operator> (
63  rti1516_2025::LogicalTimeInterval const & value) const override;
64 
66  bool operator< (
67  rti1516_2025::LogicalTimeInterval const & value) const override;
68 
70  bool operator== (
71  rti1516_2025::LogicalTimeInterval const & value) const override;
72 
74  bool operator>= (
75  rti1516_2025::LogicalTimeInterval const & value) const override;
76 
78  bool operator<= (
79  rti1516_2025::LogicalTimeInterval const & value) const override;
80 
81  // Set self to the difference between two LogicalTimes
84  void setToDifference (
85  rti1516_2025::LogicalTime const & minuend,
86  rti1516_2025::LogicalTime const& subtrahend) override;
87 
88  // Generates an encoded value that can be used to send
89  // LogicalTimeIntervals to other federates in updates or interactions
91  rti1516_2025::VariableLengthData encode () const override;
92 
93  // Alternate encode for directly filling a buffer
95  size_t encode (
96  void* buffer,
97  size_t bufferSize) const override;
98 
99  // The length of the encoded data
100  size_t encodedLength () const override;
101 
102  // Decode encodedValue into self
105  void decode (
106  rti1516_2025::VariableLengthData const & encodedValue) override;
107 
108  // Alternate decode that reads directly from a buffer
111  void decode (
112  const void* buffer,
113  size_t bufferSize) override;
114 
115  // Diagnostic string representation of time
116  std::wstring toString () const override;
117 
118  // Return the name of the Implementation, as needed by
119  // createFederationExecution.
120  std::wstring implementationName() const override;
121 
122  public:
123  //-----------------------------------------------------------------
124  // Implementation functions
125  //-----------------------------------------------------------------
126 
127  virtual double getInterval () const;
128 
129  virtual void setInterval (
130  double value);
131 
132  //-----------------------------------------------------------------
133  // Implementation operators
134  //-----------------------------------------------------------------
135  virtual HLAfloat64Interval& operator= (
136  const HLAfloat64Interval& value);
137 
138  operator double () const;
139 
140 
141  private:
142 
143  //-----------------------------------------------------------------
144  // Pointer to internal implementation
145  //-----------------------------------------------------------------
146  HLAfloat64IntervalImpl* _impl;
147  };
148 }
149 
150 
151 
Definition: LogicalTime.h:30
#define RTI_EXPORT
Definition: SpecificConfig.h:45
std::string toString(const std::wstring &inString)
Definition: objParams13.h:16
HLAfloat64IntervalImpl * _impl
Definition: HLAfloat64Interval.h:146
Definition: VariableLengthData.h:28
Definition: LogicalTimeInterval.h:30
Definition: HLAfloat64Interval.h:17

Document ID: Generated on Sun Jul 20 16:15:30 EDT 2025 from SVN revision 277985
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)