VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
hazardAreaManager.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 #pragma once
9 
13 
14 class DtSimManager;
15 class DtSimMessage;
16 class DtVrfObject;
17 
21 {
22 public:
25 
27  virtual ~DtHazardAreaManager();
28 
30  virtual bool loadHazardAreaInformationFile(const DtFilename& filename, bool clear);
31 
32 private:
35 
37  DtHazardAreaManager & operator=(const DtHazardAreaManager & orig);
38 
39 public:
40  virtual DtSimManager* simManager() const;
41 
43  virtual void addHazardAreaType(const DtEntityType&);
44 
47  virtual void removeHazardAreaType(const DtEntityType&);
48 
50  virtual std::vector<const DtVrfObject*> hazardAreas(const DtEntityType&) const;
51 
52  virtual const std::vector<DtEntityType>& hazardAreaTypes() const;
53 
55  virtual const std::set<const DtVrfObject*>& hazardAreas() const;
56 
58  virtual const DtRwHazardAreaInformation& hazardAreaInformation() const;
59 
60 protected:
61  static void requestHazardAreaInformationCallback(DtSimMessage* msg, void* usr);
62  virtual void processHazardAreaInformation(DtSimMessage* msg);
63 
65  static void hazardAreaAddedCallback(const DtVrfObject*, void*);
66  virtual void processHazardAreaAdded(const DtVrfObject*);
67 
69  static void hazardAreaRemovedCallback(const DtVrfObject*, void*);
70  virtual void processHazardAreaRemoved(const DtVrfObject*);
71 
72 protected:
75  std::vector<DtEntityType> myHazardAreaTypes;
76  std::set<const DtVrfObject*> myHazardAreas;
77 };
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtSimManager * mySimManager
Definition: hazardAreaManager.h:73
DtRwHazardAreaInformation myHazardAreaInformation
Definition: hazardAreaManager.h:74
std::set< const DtVrfObject * > myHazardAreas
Definition: hazardAreaManager.h:76
Definition: rwHazardAreaInformation.h:122
The DtHazardAreaManager will keep track of all hazard area objects and their state.
Definition: hazardAreaManager.h:20
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
File: simMsg.h.
Definition: simMessage.h:35
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
std::vector< DtEntityType > myHazardAreaTypes
Definition: hazardAreaManager.h:75

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)