VR-Forces 4.0.4 Class Documentation
include/bhave3DGui/bhaveLinesModelAgent.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00005 
00007 
00008 #pragma once
00009 
00010 #include <bhave3DGui/bhave3DGuiDefines.h>
00011 #include <bhave3DGui//bhaveLinesModel.h>
00012 #include <vrvCore/DtAgent.h>
00013 #include <vrvCore/DtAgentCreator.h>
00014 #include <vrvCore/DtAgentDefinition.h>
00015 
00016 class DtBhaveLinesModel;
00017 
00019 class DT_DLL_bhave3DGui DtBhaveLinesModelAgent : public makVrv::DtAgent
00020 {
00021 public:
00023    DtBhaveLinesModelAgent();
00024 
00026    static DtBhaveLinesModelAgent* create(makVrv::DtAgentManagerInterface& sceneInterface, bool bDistribute = true);
00027 
00029    virtual ~DtBhaveLinesModelAgent();
00030 
00034    DtBhaveLinesModel* findObject();
00035    const DtBhaveLinesModel* findObject() const;
00036 
00037    
00038    virtual void update() = 0;
00039 
00040    
00041    virtual void init(std::string&  str,bool useLocalCoord) = 0;
00042 
00043 
00044 protected:
00045    virtual DtBhaveLinesModel* findObjectAsDtBhaveLinesModel() = 0;
00046 };
00047 
00048 
00050 class DtBhaveLinesModelAgentImplementation : public virtual DtBhaveLinesModelAgent
00051 {
00052 public:
00054    DtBhaveLinesModelAgentImplementation();
00055 
00057    virtual ~DtBhaveLinesModelAgentImplementation();
00058 
00059    virtual void update();
00060 
00061 
00062    virtual void init(std::string&  str,bool useLocalCoord);
00063 
00064 
00065 protected:
00066    virtual DtBhaveLinesModel* findObjectAsDtBhaveLinesModel();
00067 
00068 };
00069 
00071 class DtBhaveLinesModelClassDefinition : public makVrv::DtAgentDefinition<DtBhaveLinesModel>
00072 {
00073 public:
00075    DtBhaveLinesModelClassDefinition(const std::string& className = "DtBhaveLinesModel");
00076 
00078    virtual ~DtBhaveLinesModelClassDefinition();
00079 
00081    enum FunctionIds
00082    {
00083       function_update,
00084       function_init,
00085       end_FunctionIds
00086    };
00087 
00088 };
00089 
00091 class DtBhaveLinesModelClassesCreator : public makVrv::DtAgentCreator
00092 {
00093 public:
00094 
00096    DtBhaveLinesModelClassesCreator();
00097 
00099    virtual ~DtBhaveLinesModelClassesCreator();
00100 
00101    static makVrv::DtAgentCreator* create();
00102 
00104    virtual makVrv::DtAgent* createAgent(makVrv::DtAgentManagerInterface& sceneInterface);
00105 
00107    virtual makVrv::DtAgentUpdateResolverInterface* createResolver(makVrv::DtDe& de, makVrv::DtUniqueID id);
00108 
00109 protected:
00110    DtBhaveLinesModelClassDefinition* myDefinition;
00111 
00112    static bool theRegisteredFlag;
00113 };

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)