VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
compatibilityController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 #pragma once
6 
9 #include <map>
10 
11 class DtSimTask;
12 class DtTaskMessage;
13 
15 {
16 public:
17  typedef DtSimTask* (*DtTaskConversionFunc)(DtSimTask*);
18 
19  virtual ~DtCompatibilityController();
20 
21  virtual const char* type() const;
22 
23  virtual bool init();
24 
25  virtual void registerTaskMsgCallbacks();
26 
27  static void compatibilityTaskCallback(DtSimMessage* msg, void* usr, DtSimTaskStatePtr taskStatePtr);
28 
29  virtual void addTaskConversion(const DtSimTaskMessageType&, DtTaskConversionFunc);
30  virtual void removeTaskConversion(const DtSimTaskMessageType&);
31 
32  static DtSimComponent * creator(const DtString& name,
33  DtVrfObject* owner,
34  DtSimManager* simManager,
35  DtComponentDescriptor* desc = 0,
36  DtReaderWriterRegistry* parentRegistry = 0);
37 
38 protected:
40  DtVrfObject* owner, DtSimManager* simManager, DtComponentDescriptor* desc,
41  DtReaderWriterRegistry* parentRegistry);
42 
43  virtual void processCompatibilityTask(const DtTaskMessage& msg, DtSimTaskStatePtr taskStatePtr);
44 
45  static void taskCompleteCallback(const DtVrfObjectMessage* msg, void* usr);
46  virtual void processTaskComplete(const DtVrfObjectMessage* msg);
47 
48  std::map<DtSimTaskMessageType, DtTaskConversionFunc> myConversions;
49 };
#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
virtual void registerTaskMsgCallbacks()
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: multiTaskControllerComponent.h:25
Definition: readerWriterRegistry.h:39
virtual const char * type() const =0
Returns a string identifies the class type of component.
DtBoost::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
Definition: compatibilityController.h:14
virtual bool init()
Calls setRadio()
File: simMsg.h.
Definition: simMessage.h:35
The base class for all messages to/from a specific DtVrfObject.
Definition: vrfObjectMessage.h:30
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
DtSimTask is an abstract base class from which real tasks can derive.
Definition: simTask.h:31
std::map< DtSimTaskMessageType, DtTaskConversionFunc > myConversions
Definition: compatibilityController.h:48
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
A DtTaskMsg is a DtRadioMsg with a pointer to a task.
Definition: taskMessage.h:19

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)