OpenDDS  Snapshot(2023/04/28-20:55)
CoherentChangeControl.h
Go to the documentation of this file.
1 /*
2  *
3  *
4  * Distributed under the OpenDDS License.
5  * See: http://www.opendds.org/license.html
6  */
7 
8 #ifndef OPENDDS_DCPS_COHERENTCHANGECONTROL_H
9 #define OPENDDS_DCPS_COHERENTCHANGECONTROL_H
10 
11 #ifndef OPENDDS_NO_OBJECT_MODEL_PROFILE
12 
13 #include "Definitions.h"
14 #include "GuidUtils.h"
15 #include "Serializer.h"
16 #include "SequenceNumber.h"
17 #include "PoolAllocator.h"
18 #include <dds/DdsDcpsInfoUtilsC.h>
19 
20 #include <iosfwd>
21 
22 #if !defined (ACE_LACKS_PRAGMA_ONCE)
23 #pragma once
24 #endif /* ACE_LACKS_PRAGMA_ONCE */
25 
27 
28 namespace OpenDDS {
29 namespace DCPS {
30 
33  ACE_UINT32 num_sample = 0,
34  SequenceNumber last_sample = SequenceNumber());
35 
36  void reset();
37  ACE_UINT32 num_samples_;
39 };
40 
41 typedef OPENDDS_MAP_CMP(GUID_t, WriterCoherentSample, GUID_tKeyLessThan) GroupCoherentSamples;
42 
43 /// End Coherent Change message.
45 
49  GroupCoherentSamples group_coherent_samples_;
50 
52 
53  /// Similar to IDL compiler generated methods.
54  size_t get_max_serialized_size();
55 
56  void reset();
57 };
58 
59 
60 /// Marshal/Insertion into a buffer.
63 
66 
67 /// Message header insertion onto an ostream.
69 std::ostream& operator<<(std::ostream& str, const CoherentChangeControl& value);
70 
71 } // namespace DCPS
72 } // namespace OpenDDS
73 
75 
76 #if defined(__ACE_INLINE__)
78 #endif /* __ACE_INLINE__ */
79 
80 #endif
81 
82 #endif /* OPENDDS_DCPS_COHERENTCHANGECONTROL_H */
WriterCoherentSample(ACE_UINT32 num_sample=0, SequenceNumber last_sample=SequenceNumber())
const LogLevel::Value value
Definition: debug.cpp:61
#define OpenDDS_Dcps_Export
Definition: dcps_export.h:24
Class to serialize and deserialize data for DDS.
Definition: Serializer.h:369
ACE_CDR::Boolean operator<<(Serializer &serializer, CoherentChangeControl &value)
Marshal/Insertion into a buffer.
typedef OPENDDS_MAP_CMP(GUID_t, WriterCoherentSample, GUID_tKeyLessThan) GroupCoherentSamples
Sequence number abstraction. Only allows positive 64 bit values.
#define OPENDDS_END_VERSIONED_NAMESPACE_DECL
ACE_CDR::Boolean operator>>(Serializer &serializer, CoherentChangeControl &value)
The Internal API and Implementation of OpenDDS.
Definition: AddressCache.h:28