VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ifSnapshotsResponse.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2016 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include "vrfmsgs/vrfmsgsDefines.h"
12 #include "vrfmsgs/ifStatus.h"
13 #include <vlutil/vlString.h>
15 
16 
24 
26 {
27 public:
28 
29  struct Snapshot
30  {
31  Snapshot() : simTime(0), isPeriodic(false), SnapshotId(-1) {};
32  Snapshot(const Snapshot& orig)
33  : simTime(orig.simTime), SnapshotId(orig.SnapshotId),
34  isPeriodic(orig.isPeriodic) {};
35 
36  virtual ~Snapshot() {};
37 
38  bool operator==(const Snapshot& rhs) const
39  {
40  return ((simTime == rhs.simTime) &&
41  (SnapshotId == rhs.SnapshotId) &&
42  (isPeriodic == rhs.isPeriodic));
43  }
44 
45  bool operator!=(const Snapshot& rhs) const { return !(*this == rhs); }
46 
47  double simTime;
48  bool isPeriodic;
50  };
51 
52  typedef std::map<int, Snapshot> SnapshotStatus;
53 
54 public:
55 
58 
60  virtual ~DtIfSnapshotsResponse();
61 
64 
67 
69  virtual int type() const;
70 
71  virtual DtSimInterfaceContent * clone() const;
72 
73  virtual int netRepSize() const;
74  virtual bool setFromNet(const char* contentBuffer,
75  unsigned contentSize);
76  virtual bool setToNet();
77 
78  virtual void printDataToString(DtString& str);
79 
80  static DtSimInterfaceContent* creator();
81 
84  virtual const SnapshotStatus& snapshots() const;
85  virtual void addSnapshot(int id, double simTime, bool isPeriodic);
86  virtual void setSnapshots(const SnapshotStatus&);
87  virtual void removeSnapshot(int id);
88  virtual void removeAllBut(int id);
89  virtual void clear();
91 
92  virtual void setBaseSnapshotTime(double);
93  virtual void clearBaseSnapshot();
94  double baseSnapshotTime() const { return myBaseSnapshotTime; };
95  bool hasBaseSnapshot() const { return myHasBaseSnapshot; };
96 
97 protected:
98  SnapshotStatus mySnapshots;
101 };
102 
103 namespace DtBufferSerialize
104 {
107 
111  DT_DLL_vrfmsgs char *encode(const DtIfSnapshotsResponse::Snapshot& messagePtr, char *buffer);
112 
116  DT_DLL_vrfmsgs const char *decode(DtIfSnapshotsResponse::Snapshot& messagePtr, const char *buffer);
117 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)