VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/signatureModifierEvalFactory.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2005 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: signatureModifierEvalFactory.h,v $ $Revision: 1.6 $ $State: Exp $
00007 *******************************************************************************/
00008 
00009 #ifndef signatureModifierEvalFactory_H_
00010 #define signatureModifierEvalFactory_H_
00011 
00012 
00013 
00014 
00015 #include <vlutil/vlConfig.h>
00016 #include <map>
00017 #include <vlutil/vlString.h>
00018 #include "vrfobjcore/signatureModifierEvaluator.h"
00019 
00020 class DtVrfObject;
00021 class DtSignatureModifier;
00022 
00023 typedef DtSignatureModifierEvaluator * (*DtSignatureModifierEvaluatorCreatorFcn)(
00024    const DtSignatureModifier& modifier, DtVrfObject* object);
00025 
00027 #include "vrfobjcore/vrfobjcoreDefines.h"
00028 class DT_DLL_vrfobjcore DtSignatureModifierEvaluatorFactory
00029 {
00030 public:
00032    DtSignatureModifierEvaluatorFactory();
00033 
00035    virtual ~DtSignatureModifierEvaluatorFactory();
00036 
00038    virtual void addCreatorFcn(const DtString& type,
00039       DtSignatureModifierEvaluatorCreatorFcn fcn);
00040 
00045    virtual DtSignatureModifierEvaluator* createSignatureModifierEvaluator(const DtString& type,
00046       const DtSignatureModifier& modifier, DtVrfObject* hostObject);
00047 
00048    static DtSignatureModifierEvaluatorFactory* create();
00049 
00050 private:
00052    DtSignatureModifierEvaluatorFactory(const DtSignatureModifierEvaluatorFactory& orig);
00054    DtSignatureModifierEvaluatorFactory& operator=(const DtSignatureModifierEvaluatorFactory& orig);
00055 
00056 protected:
00057    typedef std::map<DtString, DtSignatureModifierEvaluatorCreatorFcn> DtSignatureModifierEvalCreatorMap;
00058    DtSignatureModifierEvalCreatorMap myCreatorMap;
00059 };
00060 
00061 
00062 #endif
00063 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)