VR-Forces Developer's Guide
 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() override;
20 
21  virtual const char* type() const override;
22 
23  virtual bool init() override;
24 
25  virtual void registerTaskMsgCallbacks() override;
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  DtLocalObject* owner,
34  DtSimulationServices* simManager,
35  DtComponentDescriptor* desc = 0,
36  DtReaderWriterRegistry* parentRegistry = 0);
37 
38 protected:
40  DtLocalObject* owner, DtSimulationServices* 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 };
virtual bool init() override
Calls setRadio()
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
virtual const char * type() const override=0
Returns a string identifies the class type of component. Type values are defined in compTypes...
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:49
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: multiTaskControllerComponent.h:23
Definition: readerWriterRegistry.h:39
std::shared_ptr< DtSimTaskState > DtSimTaskStatePtr
Definition: taskAndTaskStateDefines.h:18
Definition: compatibilityController.h:14
File: simMsg.h.
Definition: simMessage.h:35
The base class for all messages to/from a specific DtVrfObject. Various subclasses of this class will...
Definition: vrfObjectMessage.h:30
Central access point of all non-object-specific the services and managers that are available for use ...
Definition: simulationServices.h:96
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:89
DtSimTask is an abstract base class from which real tasks can derive. It manages the read/write capab...
Definition: simTask.h:30
std::map< DtSimTaskMessageType, DtTaskConversionFunc > myConversions
Definition: compatibilityController.h:48
A DtTaskMsg is a DtRadioMsg with a pointer to a task. The type of the taskMsg is just the type of the...
Definition: taskMessage.h:21
A locally simulated VRF object.
Definition: localObject.h:98

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)