VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simpleProximitySensor.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
8 
10 
11 #pragma once
12 
17 
18 class DtRwObjectTypeList;
22 
26  public DtBindableLuaComponent<DtSimpleProximitySensor>
27 {
28 private:
31 
34 
37 
38 public:
39 
42  DtSimpleProximitySensor(const DtString& name,
43  DtVrfObject* owner,
44  DtSimManager* simManager,
45  DtComponentDescriptor* desc = 0,
46  DtReaderWriterRegistry* parentRegistry = 0);
47 
49  virtual ~DtSimpleProximitySensor();
50 
53  virtual const char* type() const;
54 
56  virtual void tick();
57 
61  static DtSimComponent * creator(const DtString& name,
62  DtVrfObject* owner,
63  DtSimManager* simManager,
64  DtComponentDescriptor* desc = 0,
65  DtReaderWriterRegistry* parentRegistry = 0);
66 
68  virtual void setDetectionProximity(double);
69  virtual double detectionProximity() const;
70 
73  virtual void senseObjects(const DtRwObjectTypeList&, bool hostileOnly, bool detectOwnForce);
74 
76  virtual void setObjectTypesToDetect(const std::vector<std::string>&, bool hostileOnly);
77 
80  virtual void bindLuaFunctions(lua_State* L);
81  virtual void bindLuaGlobals(lua_State* L);
82 
83 protected:
84 
86  virtual bool createPorts();
87 
88  DtSimpleProximitySensorPSR* createPSR();
89 
90  virtual bool init();
91  virtual void preFirstTickInit();
92 
93 protected:
94 
96 
97  DtSensorContactListOutputPort * myDetectedObjectListPort;
104 
105  std::vector<DtObjectType> myObjectTypesToDetect;
107 
109 
111 };
112 
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
std::vector< DtObjectType > myObjectTypesToDetect
Definition: simpleProximitySensor.h:105
virtual void preFirstTickInit()
This function can be overridden to initialize a component before it is ticked for the first time...
Definition: sensorContactListIOPort.h:71
virtual void bindLuaFunctions(lua_State *)=0
Override to bind lua functions.
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
Definition: bindableLuaComponent.h:53
A reader-writer list of DtRwSensorContactInfo elements.
Definition: sensorContactInfoList.h:30
DtSimpleProximitySensorDescriptor; descriptor for the DtSimpleProximitySensor component.
Definition: simpleProximitySensorDescriptor.h:29
DtSimpleProximitySensor senses supplied objects within the given distance.
Definition: simpleProximitySensor.h:25
class DtSimpleProximitySensorPSR:
Definition: simpleProximitySensorPSR.h:24
class DtRwObjectTypeList:
Definition: rwObjectTypeList.h:30
virtual void tick()
This gives the thread of control to the component.
DtSimComponent & operator=(const DtSimComponent &orig)
assignment operator, not implemented
virtual bool createPorts()
Called by init.
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
DT_DLL_DEBUGDRAWRENDERER void init(makVrv::DtDe &de)
Work function for the plugin initialization.
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
DtSimpleProximitySensorDescriptor * myDescriptor
Definition: simpleProximitySensor.h:110
virtual void bindLuaGlobals(lua_State *)=0
Override to bind lua globals.
DtSimpleProximitySensorPSR * myProcessState
Definition: simpleProximitySensor.h:108
DtSensorContactInfoList myContactInfoList
Definition: simpleProximitySensor.h:106
virtual const char * type() const =0
Returns a string identifies the class type of component.

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)