VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
vrfMunitionLoader.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2003 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
6 #pragma once
7 
8 #include <vlpi/disEnums.h>
10 #include <vlutil/vlString.h>
11 #include "vrfutil/simMunition.h"
13 #include <readerWriter/rwInt.h>
14 #include <readerWriter/rwReal.h>
15 
16 
20 
23 {
24 
25 public:
26  DtVrfMunitionLoader(const DtString& rwName = DtString::nullString(),
27  DtReaderWriterRegistry* parentRegistry = 0);
28 
30  const DtString& rwName = DtString::nullString(),
31  DtReaderWriterRegistry* parentRegistry = 0);
32 
33 
35  const DtVrfMunitionLoader& orig);
36 
37  virtual ~DtVrfMunitionLoader();
38 
46  virtual void tick(const DtSimMunition& correctMunition,
47  DtDetonatorFuze correctFuze, DtTime currentTime,
48  int roundsAvailable = 1);
49 
53  virtual void load(DtTime startLoadTime, const DtSimMunition& munition,
54  DtDetonatorFuze fuze);
55 
61  virtual void loadComplete(int roundsAvailable);
62 
65  virtual void unload(DtTime startUnloadTime);
66 
68  virtual void unload();
69 
71  virtual bool isLoading() const;
72 
74  virtual bool isUnLoading() const;
75 
77  virtual bool isLoaded() const;
78 
83  virtual bool isUnloaded() const;
84 
86  virtual int state() const;
88  virtual std::string stateString() const;
89 
90  virtual const DtSimMunition& currentMunition() const;
91  virtual void setCurrentMunition(const DtSimMunition& currentMunition);
92 
93  virtual DtDetonatorFuze currentFuze() const;
94  virtual void setCurrentFuze(DtDetonatorFuze currentFuze);
95 
98  virtual double completeLoadTime() const;
99  virtual void setCompleteLoadTime(double completeLoadTime);
100 
103  virtual double completeUnloadTime() const;
104  virtual void setCompleteUnloadTime(double completeUnloadTime);
105 
107  virtual double loadAmmoTime() const;
109  virtual void setLoadAmmoTime(double loadAmmoTime);
110 
112  virtual double unloadAmmoTime() const;
114  virtual void setUnloadAmmoTime(double unloadAmmoTime);
115 
119  virtual void setRoundsPerMagazine(const int nRounds);
120  virtual int roundsPerMagazine() const;
121 
124  virtual int roundsLeftInMagazine() const;
126  virtual void useRounds(const int nRounds);
127 
130  virtual void setConsoleWarn(DtOutputStream * const warnStream);
131  virtual void setConsoleDebug(DtOutputStream * const debugStream);
132 
133 protected:
134 
135  enum LoadState
136  {
140  Loaded
141  };
142 
144 
145  DtOutputStream *myConsoleWarn;
146  DtOutputStream *myConsoleDebug;
147 
153 
156 
161 
167 
168 };
LoadState
Definition: vrfMunitionLoader.h:135
DtOutputStream * myConsoleDebug
Definition: vrfMunitionLoader.h:146
Definition: readerWriter.h:85
DtRwReal myCompleteUnloadTime
Definition: vrfMunitionLoader.h:155
Definition: readerWriterRegistry.h:39
DtRwInt myRoundsLeftInMagazine
How many rounds left to be fired before becoming unloaded.
Definition: vrfMunitionLoader.h:166
DtRwInt myCurrentFuze
Definition: vrfMunitionLoader.h:152
DtSimMunition myCurrentMunition
The munition and fuze currently loaded / loading. If these do not match the values passed in to tick...
Definition: vrfMunitionLoader.h:151
This file contains the class declaration for the.
DtRwInt myState
Definition: vrfMunitionLoader.h:143
DtOutputStream * myConsoleWarn
Definition: vrfMunitionLoader.h:145
DtReal myLoadAmmoTime
Fed from controller based on the value from the descriptor.
Definition: vrfMunitionLoader.h:158
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
Definition: vrfMunitionLoader.h:137
Description: Readable, Writable int.
Definition: rwInt.h:25
Class DtVrfMunitionLoader:
Definition: vrfMunitionLoader.h:22
DtReal myUnloadAmmoTime
Fed from controller based on the value from the descriptor.
Definition: vrfMunitionLoader.h:160
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
Definition: vrfMunitionLoader.h:139
Contains the DtSimComponent class declaration.
DtRwReal myCompleteLoadTime
Definition: vrfMunitionLoader.h:154
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
DtSimMunition class.
Definition: simMunition.h:31
Definition: vrfMunitionLoader.h:138
DtRwInt myRoundsPerMagazine
How many rounds the magazine holds; loader loads a magazine at a time. Set by gun (actuator) using pa...
Definition: vrfMunitionLoader.h:164

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)