VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
cloudLayerRepository.h
Go to the documentation of this file.
1 /****************************************************************************
2  * Copyright (c) 2018 VT MAK
3  * All rights reserved.
4  ****************************************************************************/
5 
9 
10 #pragma once
11 
15 
17 
21 {
22 public:
23 
25 
28 
29  virtual ~DtCloudLayerRepository();
30 
31  // Utility to compare this repository against a remote estimate
32  // Returns True is an update should be sent; False otherwise
33  virtual bool sendNeeded(const DtEnvironmentProcessRepository& asSeenByRemote);
34 
35  void setClock(DtClock* clock);
36  DtClock* clock() const;
37 
38  double lastUpdateTime() const;
39  void setLastUpdateTime(DtTime t);
40 
44  virtual void setCloudType(CloudLayerCloudType value);
45  virtual CloudLayerCloudType cloudType() const;
47 
50  virtual void setCloudAltitude(double value);
51  virtual double cloudAltitude() const;
53 
56  virtual void setCloudThickness(double value);
57  virtual double cloudThickness() const;
59 
62  virtual void setCornerRadius(double value);
63  virtual double cornerRadius() const;
65 
68  virtual void setCloudDensity(double value);
69  virtual double cloudDensity() const;
71 
74  virtual void setCloudLayerEnabled(bool value);
75  virtual bool cloudLayerEnabled() const;
77 
79  virtual void setCloudBox(const DtVector& center, double width, double length);
80  virtual void getCloudBox(DtVector& center, double& width, double& length) const;
81 
83  virtual DtVrfCloudLayerStateRecord* cloudLayerStateRecord() const;
84 
86  virtual void updateDataRecords();
87 
89  virtual void updateExtensions();
90 
91 public:
101  static void getCloudBoxFromCosr(const DtControlObjectRepository& cosr, DtVector& center,
102  double& width, double& length);
103 
104 protected:
105 
106  virtual bool sendRecordsNeeded(const DtEnvironmentProcessRepository& asSeenByRemote);
107  virtual bool sendNetRecNeeded(DtNetEnvironmentalRecord* rec1, DtNetEnvironmentalRecord* rec2);
108  virtual bool sendCloudLayerRecNeeded(DtTime dt, DtNetEnvironmentalRecord* rec, DtNetEnvironmentalRecord* recRemote);
109  virtual DtStateRepository* clone(bool copy) const;
110 
111 protected:
112 
113  // Helpers for send-side dead reckoning (used to limit #updates sent)
118 };

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)