VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
iffControllerComponent.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2012 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
14 
15 class DtString;
16 class DtSimManager;
17 class DtSimMessage;
18 class DtIffPublisher;
19 class DtSetIffRequest;
20 class DtIffStateRepository;
21 class DtVrfIffPSR;
22 
29 {
30 public:
31 
35  DtVrfObject* owner,
36  DtSimManager* simManager,
37  DtComponentDescriptor* desc = 0,
38  DtReaderWriterRegistry* parentRegistry = 0);
39 
41  virtual ~DtIffControllerComponent();
42 
43  virtual bool init();
44 
47  virtual void preFirstTickInit();
48 
51  virtual void tick();
52 
55  virtual const char* type() const;
56 
60  static DtSimComponent * creator(const DtString& name,
61  DtVrfObject* owner,
62  DtSimManager* simManager,
63  DtComponentDescriptor* desc = 0,
64  DtReaderWriterRegistry* parentRegistry = 0);
65 
67  virtual void registerSetIffRequestMsgCallbacks();
68 
69  static void setIffRequestCallback(DtSimMessage *msg, void * usrData);
70 
71  virtual void processSetIffRequestMessage(DtSimMessage *msg);
72 
76  virtual DtVrfIffPSR* getPsr();
78 
82  virtual void registerAttributeFunctions();
83 
87  static DtReaderWriter* provideSystemOn(void* controller);
88  static DtReaderWriter* provideMode1On(void* controller);
89  static DtReaderWriter* provideMode1Code(void* controller);
90  static DtReaderWriter* provideMode2On(void* controller);
91  static DtReaderWriter* provideMode2Code(void* controller);
92  static DtReaderWriter* provideMode3On(void* controller);
93  static DtReaderWriter* provideMode3Code(void* controller);
94  static DtReaderWriter* provideMode4On(void* controller);
95  static DtReaderWriter* provideMode4Code(void* controller);
96  static DtReaderWriter* provideAltMode4Value(void* controller);
97  static DtReaderWriter* provideModeCOn(void* controller);
98  static DtReaderWriter* provideAltModeCOn(void* controller);
99  static DtReaderWriter* provideModeSOn(void* controller);
100  static DtReaderWriter* provideModeSTcasI(void* controller);
101  static DtReaderWriter* provideEmergency(void* controller);
102  static DtReaderWriter* provideFlash(void* controller);
103  static DtReaderWriter* provideSTI(void* controller);
104 
107 
108 protected:
109 
113 
116  orig);
117 
119  const DtIffControllerComponent & operator=(const
120  DtIffControllerComponent & orig);
121 
123  virtual void setRadio(DtSimRadio * radio);
124 
125  virtual bool createPublisher();
127  virtual void updateFromDescriptor();
129  virtual void updateFromSetRequest(DtSetIffRequest *setReq, bool updateInPSR = true);
132  virtual void updateDynamicData();
133 
138  virtual bool needsToTick();
139 
145  virtual bool createPSR();
146 
147 protected:
148  DtIffPublisher *myIffPublisher;
150 
153 
157 };

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)