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