MAK RTIspy API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HLAfloat64Time.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 
11 #include <RTI/time/LogicalTime.h>
13 
14 namespace rti1516_2025
15 {
16  class HLAfloat64TimeImpl;
17 
19  {
20  public:
21  // Constructors
22  HLAfloat64Time ();
23 
25  double const & value);
26 
28  rti1516_2025::LogicalTime const & value);
29 
31  HLAfloat64Time const & value);
32 
33  // Destructor
34  ~HLAfloat64Time ()
35  noexcept override;
36 
37  // Basic accessors/mutators
38  void setInitial () override;
39 
40  bool isInitial () const override;
41 
42  void setFinal () override;
43 
44  bool isFinal () const override;
45 
46  // Assignment
48  rti1516_2025::HLAfloat64Time& operator= (
49  rti1516_2025::LogicalTime const & rhs) override;
50 
51  // Operators
52 
54  rti1516_2025::LogicalTime& operator+= (
55  rti1516_2025::LogicalTimeInterval const & addend) override;
56 
58  rti1516_2025::LogicalTime& operator-= (
59  rti1516_2025::LogicalTimeInterval const & subtrahend) override;
60 
62  bool operator> (
63  rti1516_2025::LogicalTime const & value) const override;
64 
66  bool operator< (
67  rti1516_2025::LogicalTime const & value) const override;
68 
70  bool operator== (
71  rti1516_2025::LogicalTime const & value) const override;
72 
74  bool operator>= (
75  rti1516_2025::LogicalTime const & value) const override;
76 
78  bool operator<= (
79  rti1516_2025::LogicalTime const & value) const override;
80 
81  // Generates an encoded value that can be used to send
82  // LogicalTimes to other federates in updates or interactions
83  rti1516_2025::VariableLengthData encode() const override;
84 
85  // Alternate encode for directly filling a buffer
87  size_t encode (
88  void* buffer,
89  size_t bufferSize) const override;
90 
91  // The length of the encoded data
92  size_t encodedLength () const override;
93 
94  // Decode VariableLengthData into self
97  void decode (
99 
100  // Alternate decode that reads directly from a buffer
103  void decode (
104  const void* buffer,
105  size_t bufferSize) override;
106 
107  // Diagnostic string representation of time
108  std::wstring toString () const override;
109 
110  // Return the name of the implementation, as needed by
111  // createFederationExecution.
112  std::wstring implementationName() const override;
113 
114  public:
115  //-----------------------------------------------------------------
116  // Implementation methods
117  //-----------------------------------------------------------------
118  virtual double getTime () const;
119 
120  virtual void setTime (
121  double value);
122 
123  //-----------------------------------------------------------------
124  // Implementation operators
125  //-----------------------------------------------------------------
126  virtual HLAfloat64Time& operator= (
127  const HLAfloat64Time&);
128 
129  operator double() const;
130 
131  private:
132 
133  //-----------------------------------------------------------------
134  // Interval implementation must have access to time implementation
135  // in order to calculate difference
136  //-----------------------------------------------------------------
137  friend class HLAfloat64Interval;
138 
139  //-----------------------------------------------------------------
140  // Pointer to internal implementation
141  //-----------------------------------------------------------------
142  HLAfloat64TimeImpl* _impl;
143  };
144 }
145 
146 
147 
Definition: LogicalTime.h:30
Definition: HLAfloat64Time.h:18
#define RTI_EXPORT
Definition: SpecificConfig.h:45
std::string toString(const std::wstring &inString)
Definition: objParams13.h:16
Definition: VariableLengthData.h:28
Definition: LogicalTimeInterval.h:30
HLAfloat64TimeImpl * _impl
Definition: HLAfloat64Time.h:142
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)