VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
objectSensorPSR.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2005 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 /*******************************************************************************
6 ** $RCSfile: objectSensorPSR.h,v $ $Revision: 1.7 $ $State: Exp $
7 *******************************************************************************/
8 
11 
12 #ifndef objectSensorPSR_H_
13 #define objectSensorPSR_H_
14 
16 #include <readerWriter/rwReal.h>
17 #include <readerWriter/rwBoolean.h>
18 #include <vlutil/vlTime.h>
21 
26 
27 class DtEntityIdentifier;
28 
31 {
32 public:
33 
35  DtObjectSensorPSR(DtVrfObject* vrfObject,
36  const DtString& rwName = DtString::nullString(),
37  DtReaderWriterRegistry* parentRegistry = 0);
38 
41  const DtString& rwName = DtString::nullString(),
42  DtReaderWriterRegistry* parentRegistry = 0);
43 
45  virtual ~DtObjectSensorPSR();
46 
49 
52  const DtString& rwName = DtString::nullString(),
53  DtReaderWriterRegistry* parentRegistry = 0) const;
54 
56  virtual DtString type() const;
57 
60  virtual bool init();
61 
66  virtual DtSensorContactInfoList* contactInfoList();
72  virtual const DtSensorContactInfoList* contactInfoList() const;
73 
76  virtual DtRwSensorContactInfo* lookupContactById(const DtEntityIdentifier& id) const;
77 
79  virtual void clearContactInfoList();
80 
86  virtual DtRwSensorContactInfo* createSensorContactInfo() const;
87 
93  virtual const DtRwObjectTypeList& typesToDetectForTask() const;
94 
96  virtual void setTypesToDetectForTask(const DtRwObjectTypeList& objectTypes);
98  virtual void clearTypesToDetectForTask();
99 
101  virtual void setNextDetectAttempt(DtTime time);
102  virtual DtTime nextDetectAttempt() const;
103 
105  virtual void setSensorEnabled(bool enabled);
106  virtual bool sensorEnabled() const;
107 
113  virtual void putSelf(std::string& fp, int indentLevel = 0,
114  bool writeUnspecified = false, const DtFilename& path = DtReaderWriter::appPath());
115 
118  virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths& searchPaths,
119  const DtVariableBindingsList& variableBindings);
120 
121 protected:
126  virtual DtSensorContactInfoList* createSensorContactInfoList(const DtString& name);
127 
128 public:
129 
131  static DtVrfProcessStateRepository* creator (const DtString& rwName,
132  DtVrfObject* vrfObject, DtReaderWriterRegistry* parentRegistry);
133 
134 protected:
135 
140  virtual void mapContactIdsToContactNames();
141 
145  virtual void mapContactNamesToContactIds();
146 
147 protected:
148 
152 
156 
163 
166 
169 };
170 
171 #endif
DtSensorContactInfoList * myContactInfoList
Init() creates this item by using the createSensorContactInfoList() factory method.
Definition: objectSensorPSR.h:151
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtRwReal myNextDetectAttempt
Simulation time of next detection attempt (seconds).
Definition: objectSensorPSR.h:165
DtRwBoolean mySensorEnabled
Whether the sensor is enabled or disabled.
Definition: objectSensorPSR.h:168
Definition: readerWriterRegistry.h:39
This class represents the data gathered by a sensor about a particular single sensor contact...
Definition: rwSensorContactInfo.h:67
A reader-writer list of DtRwSensorContactInfo elements.
Definition: sensorContactInfoList.h:30
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
class DtRwObjectTypeList:
Definition: rwObjectTypeList.h:30
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
std::vector< DtFilename > SearchPaths
Definition: readerWriter.h:92
DtRwObjectTypeList myTaskDetectionTypes
Parameter Name: task-detection-types Parameter Description: Types of objects to detect for a particul...
Definition: objectSensorPSR.h:162
virtual void putSelf(std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
Top level call to write itself to file.
bool myMutableMapContactNamesToContactIds
Flag used to indicate that we should initialize contact names to DtEntityIdentifiers.
Definition: objectSensorPSR.h:155
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
virtual bool init()
Used for virtual construction. This base method simply returns true.
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories.
Definition: vrfProcessStateRepository.h:43
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
virtual void getSelf(DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Top level to read itself from an input stream.
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
static const DtFilename & appPath()
Gets the current working directory.
Definition: objectSensorPSR.h:30
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)