VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
illuminationDecorator.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
10 #include <tbb/spin_rw_mutex.h>
12 
15 {
16 public:
18  virtual ~DtIlluminationSimObjectDecorator() override;
19 
21  virtual double illumination() const;
22  virtual double expectedIllumination(double dateAndTimeOfDay) const;
23 
24 protected:
26  {
27  IlluminationInformation() : lastSimTime(-1.), illumination(0.) {};
28  double lastSimTime;
29  double illumination;
30  tbb::spin_rw_mutex mutex;
31  };
32 
34 };
35 
38 {
39 public:
40  virtual DtSimObjectDecorator* createDecorator(const DtSimObject* o) const override
41  { return new DtIlluminationSimObjectDecorator(o); };
43  { throw makVrf::DtUnimplementedMethod("The DtIlluminationDecorator is not created for the DtLocalObject."); };
44 
45  virtual const char* DecoratorType() const override { return "DtIlluminationDecorator"; };
46 };
This will keep track of the objects illumination for sensor purposes.
Definition: illuminationDecorator.h:14
Definition: stateDataTypes.h:23
The DtIlluminationDecoratorCreator will create the appropriate type of illumination proxy logic...
Definition: illuminationDecorator.h:37
double illumination
Definition: illuminationDecorator.h:29
virtual const char * DecoratorType() const override
Definition: illuminationDecorator.h:45
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
tbb::spin_rw_mutex mutex
Definition: illuminationDecorator.h:30
Definition: illuminationDecorator.h:25
virtual DtLocalObjectDecorator * createDecorator(DtLocalObject *o) const override
Definition: illuminationDecorator.h:42
Represents a single simulation object in the exercise. Object may be VRF simulation, or non-VRF simulated, and may be simulated by the local sim engine, or by a remote sim engine. Only public (external) state of the object is available. All data is read-only. All access to data of the object is thread safe within the simulation frame.
Definition: simObject.h:80
Definition: decoratorBase.h:57
Definition: decoratorBase.h:30
virtual DtSimObjectDecorator * createDecorator(const DtSimObject *o) const override
Definition: illuminationDecorator.h:40
IlluminationInformation myIlluminationInformation
Definition: illuminationDecorator.h:33
Definition: decoratorBase.h:44
A locally simulated VRF object.
Definition: localObject.h:98

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)