VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/sensorSignatureManager.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2005 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: sensorSignatureManager.h,v $ $Revision: 1.8 $ $State: Exp $
00007 *******************************************************************************/
00008 #ifndef sensorSignatureManager_H_
00009 #define sensorSignatureManager_H_
00010 
00014 
00017 
00018 #include "tdbutil/symStr.h"
00019 #include <vlutil/vlConfig.h>
00020 #include <map>
00021 
00022 class DtPhysicalWorld;
00023 class DtVrfObject;
00024 class DtVector;
00025 class DtSignaturePropagator;
00026 class DtSignaturePropagatorArgs;
00027 class DtSignaturePropagatorDescriptorList;
00028 
00037 #include "vrfobjcore/vrfobjcoreDefines.h"
00038 class DT_DLL_vrfobjcore DtSensorSignatureManager
00039 {
00040 private:
00042    DtSensorSignatureManager();
00044    DtSensorSignatureManager(const DtSensorSignatureManager& orig);
00046    DtSensorSignatureManager& operator=(const DtSensorSignatureManager& orig);
00047 
00048 protected:
00051    DtSensorSignatureManager(DtPhysicalWorld* physicalWorld);
00052 
00055    virtual bool init();
00056 
00057 public:
00061    static DtSensorSignatureManager* create(DtPhysicalWorld* physicalWorld);
00062 
00063    virtual ~DtSensorSignatureManager();
00064 
00066    virtual void reinitialize();
00067 
00072    virtual double apparentObjectSignature(const DtSymbolString& sensorDomain,
00073       const DtSignaturePropagatorArgs& propagatorArgs) const;
00074 
00077    virtual double apparentObjectSignature(const DtSymbolString& sensorDomain,
00078       const DtVrfObject* targetObject, const DtVrfObject* viewingObject) const;
00079    
00083    virtual double apparentObjectSignature(const DtSignaturePropagator* propagator, 
00084       const DtSymbolString& sensorDomain, const DtSignaturePropagatorArgs& propagatorArgs) const;
00085    
00091    virtual bool createPropagatorsFromDescriptorList(
00092       const DtSignaturePropagatorDescriptorList& descList);
00093 
00094 protected:
00098    virtual const DtSignaturePropagator* propagatorForDomain(const DtSymbolString& domain) const;
00099 
00102    void deleteSignaturePropagators();
00103 
00104 protected:
00105    DtPhysicalWorld* myPhysicalWorld;
00106    typedef std::map<DtSymbolString, DtSignaturePropagator*> DtSignaturePropagatorMap;
00107    DtSignaturePropagatorMap mySignaturePropagatorMap;
00108 };
00109 
00110 #endif

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)