VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
engineeringObjectSensor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
14 #include "vrfmodel/objectSensor.h"
16 
17 #include "boost/optional.hpp"
18 
20 class DtRwPropertiesMap;
21 
23 {
24 private:
27 
30 
33 
34 public:
35 
39  DtLocalObject* owner,
40  DtSimulationServices* simManager,
41  DtComponentDescriptor* desc = 0,
42  DtReaderWriterRegistry* parentRegistry = 0);
43 
45  virtual ~DtEngineeringObjectSensor() override;
46 
47  virtual bool init() override;
48 
51  virtual const char* type() const override;
52 
54  virtual int sensorType() const override;
55 
56  virtual void tick() override;
57 
61  static DtSimComponent * creator(const DtString& name,
62  DtLocalObject* owner,
63  DtSimulationServices* simManager,
64  DtComponentDescriptor* desc = 0,
65  DtReaderWriterRegistry* parentRegistry = 0);
66 
67 protected:
68 
71  virtual bool detectObject(DtSimObjectReference object, DtRwSensorContactInfo* contactInfo) override;
72 
76  DtRwSensorContactInfo* contactInfo,
77  bool& contactInfoModified) override;
78 
80  virtual int detectionLevel(const DtSimObject* object,
81  const DtRwSensorContactInfo* contactInfo);
82 
84  virtual void updateEngineeringSensorContactInfo(const DtSimObject* object,
85  DtRwSensorContactInfo* contactInfo, int level);
86 
87 protected:
88 
90 
93 
94  boost::optional<double> myFootprintProp;
97 };
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtEngineeringObjectSensorDescriptor * myDescriptor
Definition: engineeringObjectSensor.h:89
virtual ContinueDetectingResult continueDetectingObject(DtSimObjectReference object, DtRwSensorContactInfo *contactInfo, bool &contactInfoModified)
DT_DLL_VRVCORE DtTaitBryan level(const DtCoordinateSystem &cs, const DtVector &localOrigin, double topoHeading)
Returns a level orientation with the topographic heading.
virtual int sensorType() const
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:49
static DtSimComponent * creator(const DtString &name, DtLocalObject *owner, DtSimulationServices *simManager, DtComponentDescriptor *desc=0, DtReaderWriterRegistry *parentRegistry=0)
Definition: readerWriterRegistry.h:39
This class represents the data gathered by a sensor about a particular single sensor contact...
Definition: rwSensorContactInfo.h:68
DtEngineeringObjectSensorDescriptor; descriptor for the DtEngineeringObjectSensor component...
Definition: engineeringObjectSensorDescriptor.h:20
const DtObjectSensor & operator=(const DtObjectSensor &orig)
assignment operator; not implemented
DtObjectSensor is a base level sensor component.
Definition: objectSensor.h:53
Definition: engineeringObjectSensor.h:22
Acts as a map for properties. A map is a definition that has a key and a prototype, with values being the key and prototype pair. The key can only be a string (DtRwStringType), int (DtRwIntType, DtRwInt8Type, DtRwInt16Type, DtRwInt32Type), or real (DtRwRealType, DtRwReal32Type, DtRwReal64Type).
Definition: rwPropertiesMap.h:41
boost::optional< double > myFootprintProp
These properties gets cached in the tick function so it doesn&#39;t need to be looked up every time detec...
Definition: engineeringObjectSensor.h:94
ContinueDetectingResult
Definition: objectSensor.h:69
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
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
virtual bool detectObject(DtSimObjectReference object, DtRwSensorContactInfo *contactInfo)
virtual bool init() override
Calls createPSR(), createDetectableObjectList(), createAndInitSensorMonitor() and initSensorGeometry(...
const DtRwPropertiesMap * myEnvAttritionProp
These properties gets cached in the tick function so it doesn&#39;t need to be looked up every time detec...
Definition: engineeringObjectSensor.h:95
virtual void tick() override
Processes only if the simulation is not paused. Calls attemptToActivate() on myDetectedObjectListPort...
virtual const char * type() const override
Returns a string identifies the class type of component. Type values are defined in compTypes...
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)