VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
simSubordinateSearch.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2015 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
11 
12 #include <vlutil/vlMachineTypes.h>
13 #include "vrfobjcore/simObject.h"
14 
16 class DtLocalObject;
17 
22 
25 {
26 public:
27 
30 
32  virtual ~DtSimSubordinateSearch() = 0;
33 
40  bool search(const DtUUID& search, DtLocalObject* owner, const DtSimulationServices*);
41 
43  virtual const DtString& modifier() const;
44 
51  virtual void setModifier(const DtString& modifier);
52 
63  virtual bool searchBelow(DtSimObjectReference entity, bool excludeDestroyed);
64 
66  virtual bool searchBelow(DtLocalObject* entity, DtSimObjectReference targetOfCheck, bool excludeDestroyed);
67 
70  virtual bool searchBelow(int iForce, bool excludeDestroyed);
71 
73  virtual bool result();
74 
77  virtual bool isTopLevelEntity(const DtString& entity) const;
78 
81  virtual bool isValidEntity(DtSimObjectReference entity);
82 
85  virtual int forceType(const DtString& entity) const;
86 
88  virtual const DtUUID& simulationObject() const;
89 
90 protected:
91 
97  virtual bool initializeSearch(DtSimObjectReference entity);
98  virtual bool initializeSearch(const DtSimulationServices* vrfObjectManager);
99 
108  virtual bool inspectEntity(DtSimObjectReference entity);
109 
112  virtual bool isForSelfOnly() const;
113  virtual bool inspectEntity(DtLocalObject* entity, DtSimObjectReference targetOfCheck);
114  virtual bool inspectTopLevelEntity(DtSimObjectReference entity, bool excludeDestroyed);
115  virtual bool inspectAggregateEntity(DtSimObjectReference entity, bool excludeDestroyed);
116 
120  virtual bool searchSubtree(DtSimObjectReference entity, bool excludeDestroyed);
121  virtual bool searchSubtree(DtLocalObject* entity, DtSimObjectReference targetOfCheck, bool excludeDestroyed);
122 
125  virtual bool searchSubordinates(DtSimObjectReference entity, bool excludeDestroyed);
126 
127 private:
130 
132  DtSimSubordinateSearch& operator=(const DtSimSubordinateSearch& orig);
133 
134 protected:
136  bool myAnyFlag;
137  bool myResult;
140 };
UUID is a unique ID wrapper class.
Definition: uuid.h:59
The DtSimObjectReference is a shared pointer that can be used amongst many object for access to the u...
Definition: simObjectReference.h:26
const DtSimulationServices * mySimulationServices
Definition: simSubordinateSearch.h:139
class DtSimSubordinateSearch:
Definition: simSubordinateSearch.h:24
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:95
DtUUID mySimulationObject
Definition: simSubordinateSearch.h:138
bool myResult
Definition: simSubordinateSearch.h:137
DtString myModifier
Definition: simSubordinateSearch.h:135
bool myAnyFlag
Definition: simSubordinateSearch.h:136
A locally simulated VRF object. Holds all internal and external data for the object, and provides access to both the current frame and next frame state data for the object. All current frame data is read-only, and next-frame data can be written to. No thread safety guarantees are made on this object during the simulation frame and it should only be accessed by the thread that is simulating the object.
Definition: localObject.h:86

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)