VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
munitionLaunchController.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2013 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
11 
12 #pragma once
13 
15 
16 class DtIfPlan;
19 
42 
45 {
46 private:
53 
54 public:
55 
59  DtSimManager* simManager, DtComponentDescriptor* compDesc = 0,
60  DtReaderWriterRegistry* parentRegistry = 0);
61 
63  virtual ~DtMunitionLaunchController();
64 
67  virtual const char* type() const;
68 
71  virtual bool init();
72 
74  virtual void setComponentDescriptor(DtComponentDescriptor *compDesc);
75 
81  virtual bool createPSR();
82 
89  virtual void tick();
90 
94  static DtSimComponent * creator(const DtString& name,
95  DtVrfObject* owner,
96  DtSimManager* simManager,
97  DtComponentDescriptor* desc = 0,
98  DtReaderWriterRegistry* parentRegistry = 0);
99 
103  virtual DtCruiseMissileLaunchControllerPSR* getPsr();
104  virtual DtCruiseMissileLaunchControllerDescriptor* getDescriptor();
106 
110  virtual void registerAttributeFunctions();
111 
115  static DtReaderWriter* provideMunitionName(void* controller);
116 
120  static bool launchMunition(void* controller, DtReaderWriter* dummy);
121 
125  static bool cancelLaunch(void* controller, DtReaderWriter* dummy);
126 
128 
129 protected:
131  virtual DtReaderWriter* processProvideMunitionName();
132 
137  virtual bool processLaunchMunition(DtReaderWriter* dummy);
138 
142  virtual bool processCancelLaunch();
143 
146  virtual bool munitionResourceAvailable() const;
147 
149  virtual void consumeMunitionResource();
150 
154  virtual DtVrfObject* createMunitionObject();
155 
164  virtual void setMunitionWarheadData(DtVrfObject* munition, DtEventId& eventId);
165 
169  virtual DtIfPlan createMunitionPlan(const DtUUID& munition);
170 
174  virtual DtUUID getTargetFromTaskMessage(const DtTaskMessage *tm) const;
175 
178  virtual void createAndSendFireInteraction(const DtVrfObject* munition,
179  const DtEventId& eventId);
180 
182  virtual void addRangeItems();
183 
184  virtual void clearTask();
185 
186 protected:
189 
193 
196 
198 };
199 
class DtIfPlan:
Definition: ifPlan.h:61
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
class DtCruiseMissileLaunchControllerPSR:
Definition: cruiseMissileLaunchControllerPSR.h:23
#define DT_DLL_vrfmodel
This file is used to determine how to build.
Definition: vrfmodelDefines.h:24
DtCruiseMissileLaunchControllerDescriptor; descriptor for the DtCruiseMissileLaunchController compone...
Definition: cruiseMissileLaunchControllerDescriptor.h:26
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
bool myRangeItemsAdded
Definition: munitionLaunchController.h:197
DtRwUUID myTargetName
Temporary.
Definition: munitionLaunchController.h:195
This class provides a base class for all controllers that are capable of executing a DtSimTask...
Definition: singleTaskControllerComponent.h:20
Definition: readerWriter.h:85
A readable, writable type whose name is the name of a component and that has a list of component name...
Definition: componentDescriptor.h:42
Definition: readerWriterRegistry.h:39
virtual const char * type() const =0
Returns a string identifies the class type of component.
virtual bool init()
Calls setRadio()
virtual void clearTask()
If component is currently tasked, calls clearPendingSubtasks(), sets the tasked flag to false...
Description: Readable, Writable uuid string.
Definition: rwUUID.h:419
virtual void setComponentDescriptor(DtComponentDescriptor *componentDescriptor)
The component descriptor specified in the order of battle file or parameter file that was used to cre...
DtMunitionLaunchController models launch of a munition.
Definition: munitionLaunchController.h:44
virtual void tick()
This gives the thread of control to the component.
*array controller(no time code)*/template< class Instance
//!//!//!//!//!//!//!//!//!//!//!//
The DtSimComponent class is the base class for the entire simulation model component hierarchy...
Definition: simComponent.h:67
const DtTaskControllerComponent & operator=(const DtTaskControllerComponent &orig)
assignment operator
DtCruiseMissileLaunchControllerPSR * myProcessState
Container for state data associated with this component.
Definition: munitionLaunchController.h:192
virtual void registerAttributeFunctions()
Called to register functions that provide system attribute values.
Definition: simComponent.h:151
The simulation engine is controlled by a single,top-level class called the Simulation Manager...
Definition: simManager.h:103
DtCruiseMissileLaunchControllerDescriptor * myDescriptor
Pointer to my descriptor.
Definition: munitionLaunchController.h:188
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)