VR-Link API Documentation for DIS
encFactory.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 1992-2010 VT MAK
3 ** All rights reserved.
4 *********************************************************************/
5 
8 
9 #ifndef DtStateEncoderFactory_H_
10 #define DtStateEncoderFactory_H_
11 
12 #if DtHLA
13 
14 #include "hStateEncoder.h"
15 #include <vlutil/vlMachineTypes.h>
16 #include <map>
17 
18 class DtFom;
19 
24 class DT_DLL_VL DtStateEncoderFactory
25 {
26 public:
27 
29  DtStateEncoderFactory(DtExerciseConn* exConn);
30 
32  DtStateEncoderFactory(DtFom* fom);
33 
35  virtual ~DtStateEncoderFactory();
36 
37 private:
38 
40  DtStateEncoderFactory(const DtStateEncoderFactory& orig);
41 
43  DtStateEncoderFactory& operator=(const DtStateEncoderFactory& orig);
44 
45 public:
46 
50  virtual DtHlaStateEncoder* createEncoder(RTI::ObjectClassHandle hand);
51 
57  virtual DtHlaStateEncoder* addEncoder(
58  RTI::ObjectClassHandle hand,
59  DtHlaStateEncoder* encoder);
60 
68  virtual void addAttributeEncoder(
69  RTI::ObjectClassHandle classHand,
70  RTI::AttributeHandle attrHand,
71  DtHlaStateEncoder::DtAttributeEncoder encoder,
72  bool applyToSubclasses = true);
73 
75  virtual void addAttributeEncoder(
76  char* className,
77  RTI::AttributeHandle attrHand,
78  DtHlaStateEncoder::DtAttributeEncoder func,
79  bool applyToSubclasses = true);
80 
82  virtual void addAttributeEncoder(
83  RTI::ObjectClassHandle classHand,
84  char* attrName,
85  DtHlaStateEncoder::DtAttributeEncoder func,
86  bool applyToSubclasses = true);
87 
89  virtual void addAttributeEncoder(
90  char* className,
91  char* attrName,
92  DtHlaStateEncoder::DtAttributeEncoder func,
93  bool applyToSubclasses = true);
94 
102  virtual void addAttributeChecker(
103  RTI::ObjectClassHandle classHand,
104  RTI::AttributeHandle attrHand,
105  DtHlaStateEncoder::DtAttributeChecker encoder,
106  bool applyToSubclasses = true);
107 
109  virtual void addAttributeChecker(
110  char* className,
111  RTI::AttributeHandle attrHand,
112  DtHlaStateEncoder::DtAttributeChecker func,
113  bool applyToSubclasses = true);
114 
116  virtual void addAttributeChecker(
117  RTI::ObjectClassHandle classHand,
118  char* attrName,
119  DtHlaStateEncoder::DtAttributeChecker func,
120  bool applyToSubclasses = true);
121 
123  virtual void addAttributeChecker(
124  char* className,
125  char* attrName,
126  DtHlaStateEncoder::DtAttributeChecker func,
127  bool applyToSubclasses = true);
128 
138  virtual DtHlaStateEncoder* encoder(RTI::ObjectClassHandle hand,
139  bool copyBase = false);
140 
141 protected:
142 
143  typedef std::map<RTI::ObjectClassHandle, DtHlaStateEncoder*> ObjectClassHandleToEncoderMap;
144  ObjectClassHandleToEncoderMap myProtos;
145 
146  DtFom* myFom;
147 };
148 
149 #endif
150 #endif
151 

Document ID: Generated on Wed Aug 14 15:35:11 EDT 2013 from SVN revision 130445
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)