MAK RTIspy API Documentation for HLA 4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HLAfloat64TimeFactory.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 // Defines interface for HLAfloat64TimeFactory which presents a
14 // floating point-based time/interval representation in the range 0 - 2^63-1.
15 
16 namespace rti1516_2025
17 {
18  const std::wstring HLAfloat64TimeName(L"HLAfloat64Time");
19 
20  class HLAfloat64Time;
21  class HLAfloat64Interval;
22 
24  {
25  public:
27 
29  noexcept override;
30 
31  // Return a LogicalTime with the given value
33  virtual std::unique_ptr< HLAfloat64Time > makeLogicalTime (
34  double value);
35 
36  // Return a LogicalTime with a value of "initial"
38  std::unique_ptr< LogicalTime > makeInitial() override;
39 
40  // Return a LogicalTime with a value of "final"
42  std::unique_ptr< LogicalTime > makeFinal() override;
43 
44  // Return a LogicalTimeInterval with the given value
46  virtual std::unique_ptr< HLAfloat64Interval > makeLogicalTimeInterval (
47  double value);
48 
49  // Return a LogicalTimeInterval with a value of "zero"
51  std::unique_ptr< LogicalTimeInterval > makeZero() override;
52 
53  // Return a LogicalTimeInterval with a value of "epsilon"
55  std::unique_ptr< LogicalTimeInterval > makeEpsilon() override;
56 
57  // LogicalTime decode from an encoded LogicalTime
60  std::unique_ptr< LogicalTime > decodeLogicalTime (
61  VariableLengthData const & encodedLogicalTime) override;
62 
63  // Alternate LogicalTime decode that reads directly from a buffer
66  std::unique_ptr< LogicalTime > decodeLogicalTime (
67  const void* buffer,
68  size_t bufferSize) override;
69 
70  // LogicalTimeInterval decode from an encoded LogicalTimeInterval
73  std::unique_ptr< LogicalTimeInterval > decodeLogicalTimeInterval (
74  VariableLengthData const & encodedValue) override;
75 
76  // Alternate LogicalTimeInterval decode that reads directly from a buffer
79  std::unique_ptr< LogicalTimeInterval > decodeLogicalTimeInterval (
80  const void* buffer,
81  size_t bufferSize) override;
82 
83  std::wstring getName () const override;
84  };
85 }
86 
87 
88 
#define RTI_EXPORT
Definition: SpecificConfig.h:45
Definition: LogicalTimeFactory.h:40
const std::wstring HLAfloat64TimeName(L"HLAfloat64Time")
Definition: HLAfloat64TimeFactory.h:23
Definition: VariableLengthData.h:28

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)