VR-Forces 4.0.4 Class Documentation
include/vrfmodel/combatRangeController.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2012 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: combatRangeController.h,v $ $Revision: 1.37 $ $State: Exp $
00007 *******************************************************************************/
00008 
00011 
00013 
00014 #pragma once
00015 
00016 #include <vrfmodel/vrfmodelDefines.h>
00017 #include <vrfobjcore/cntrlCmpnt.h>
00018 #include <vrfobjcore/vrfAggregateSR.h>
00019 #include <vrfobjcore/subordMgr.h>
00020 
00021 class DtCombatRangeControllerDescriptor;
00022 
00024 class DT_DLL_vrfmodel DtCombatRangeController : public DtControllerComponent
00025 {
00026 
00027 public:
00028 
00031    DtCombatRangeController(const DtString& name, 
00032       DtVrfObject* owner,
00033       DtSimManager* simManager, 
00034       DtComponentDescriptor* desc = 0,
00035       DtReaderWriterRegistry* parentRegistry = 0);
00036 
00038    virtual ~DtCombatRangeController();
00039 
00042    virtual DtString type() const;
00043 
00047    static DtSimComponent * creator(const DtString& name, 
00048       DtVrfObject* owner,
00049       DtSimManager* simManager, 
00050       DtComponentDescriptor* desc = 0,
00051       DtReaderWriterRegistry* parentRegistry = 0);
00052 
00053    virtual bool init();
00054 
00059    virtual void setRangeItems();
00060 
00061 protected:
00062   
00065    virtual void setRangeItemsFromDescriptor();
00066 
00069    virtual void setRangeItemsFromSubordinates();
00070 
00072    virtual void tick();
00073 
00075    virtual void mergeRangeItems(const DtRangeItems&);
00076 
00077    static void subordinateChangedCallback( const DtSubordinateManager& subordinateManager, void* userData);
00078 
00079    virtual void setRebuildRangeItemListOnNextTick( bool onOff );
00080    virtual bool rebuildRangeItemListOnNextTick();
00081 
00082    virtual bool belongsToAggregate();
00083 
00084 private:
00086    DtCombatRangeController();
00087 
00089    DtCombatRangeController(const DtCombatRangeController & orig);
00090 
00092    const DtCombatRangeController & operator=(const DtCombatRangeController &orig);
00093 
00094 protected:
00095 
00096    const DtCombatRangeControllerDescriptor* myDescriptor;
00097    bool myRebuildRangeItemListOnNextTick;
00098    //ASR of the aggregate owning the controller
00099    //If not an aggregate, this will be null
00100    DtVrfAggregateStateRepository* myOwningAggregateSR;
00101 };

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)