VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
affectEngineeringObjectController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
12 #include "vlutil/vlString.h"
15 
18 
22 {
23 public:
26  DtSimManager * simManager, DtComponentDescriptor* desc = NULL,
27  DtReaderWriterRegistry * parentRegistry = 0);
28 
31 
33  virtual bool init();
34 
35 private:
38 
41 
42 public:
43 
45  virtual bool createPSR();
46 
47  virtual const char* type() const = 0;
48 
49  virtual void tick();
50 
53  virtual void registerTaskMsgCallbacks();
54 
55  static void taskCompleteReportCallback(DtSimMessage* msg, void* usr);
56 
57  virtual void processTaskCompleteReport(DtSimMessage* msg);
58 
62  virtual bool tickWhileDestroyed() const;
63 
64 protected:
65 
67  virtual void processIdleState() = 0;
68 
71  virtual void processSettingUpState() = 0;
72 
75  virtual void processAffectingState() = 0;
76 
80  virtual void processAffectingPausedState() = 0;
81 
84  virtual void processMovingIntoRangeState() = 0;
85 
87  virtual void moveInRange(const DtVrfObject* obj, double range,
88  double objectRadius);
89 
92  virtual void moveInRange(const DtLocalVertexList& vertices,
93  double range, double objectRadius);
94 
97  virtual void moveInRange(const DtVector& location, double range,
98  double objectRadius);
99 
101  virtual bool isInRange(const DtVrfObject* obj, double range,
102  double objectRadius) const;
103 
105  virtual bool isInRange(const DtLocalVertexList& vertices, double range,
106  double objectRadius) const;
107 
109  virtual bool isInRange(const DtVector& location, double range,
110  double objectRadius) const;
111 
113  virtual bool isArealEngineeringObject(const DtObjectType& objectType) const;
114 
116  virtual bool isLinearEngineeringObject(const DtObjectType& objectType) const;
117 
119  virtual bool isPointEngineeringObject(const DtObjectType& objectType) const;
120 
121 protected:
122 
126 
127 };
128 

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)