VR-Link API Documentation for HLA Evolved
decFactory.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00008 #ifndef DtStateDecoderFactory_H_
00009 #define DtStateDecoderFactory_H_
00010 
00011 #if DtHLA 
00012 
00013 #include "hStateDecoder.h"
00014 #include <vlutil/vlMachineTypes.h>
00015 #include <map>
00016 
00017 class DtFom;
00018 
00023 class DT_DLL_VL DtStateDecoderFactory
00024 {
00025 public:
00026 
00028    DtStateDecoderFactory(DtExerciseConn* exConn);
00029 
00031    DtStateDecoderFactory(DtFom* fom);
00032 
00034    virtual ~DtStateDecoderFactory();
00035 
00036 private:
00037    
00039    DtStateDecoderFactory(const DtStateDecoderFactory& orig);
00040 
00042    DtStateDecoderFactory& operator=(const DtStateDecoderFactory& orig);
00043 
00044 public:
00045 
00049    virtual DtHlaStateDecoder* createDecoder(RTI::ObjectClassHandle hand);
00050 
00056    virtual DtHlaStateDecoder* addDecoder(
00057       RTI::ObjectClassHandle hand,
00058       DtHlaStateDecoder* decoder);
00059 
00067    virtual void addAttributeDecoder(
00068       RTI::ObjectClassHandle classHand,
00069       RTI::AttributeHandle attrHand,
00070       DtHlaStateDecoder::DtAttributeDecoder decoder, 
00071       bool applyToSubclasses = true);
00072 
00074    void addAttributeDecoder(
00075       char* className,
00076       RTI::AttributeHandle attrHand,
00077       DtHlaStateDecoder::DtAttributeDecoder func, 
00078       bool applyToSubclasses = true);
00079 
00081    void addAttributeDecoder(
00082       RTI::ObjectClassHandle classHand,
00083       char* attrName,
00084       DtHlaStateDecoder::DtAttributeDecoder func, 
00085       bool applyToSubclasses = true);
00086 
00088    void addAttributeDecoder(
00089       char* className,
00090       char* attrName,
00091       DtHlaStateDecoder::DtAttributeDecoder func, 
00092       bool applyToSubclasses = true);
00093 
00103    virtual DtHlaStateDecoder* decoder(RTI::ObjectClassHandle hand,
00104       bool copyBase = false);
00105 
00106 protected:
00107 
00108    typedef std::map<RTI::ObjectClassHandle, DtHlaStateDecoder*> ObjectClassHandleToStateDecoderMap;
00109    ObjectClassHandleToStateDecoderMap myProtos;
00110 
00111    DtFom* myFom;
00112 };
00113 
00114 #endif
00115 #endif
00116 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)