VR-Forces 4.0.4 Class Documentation
include/vrfmodel/aggregateOrganizationController.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1999 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: aggregateOrganizationController.h,v $ $Revision: 1.3 $ $State: Exp $
00007 *********************************************************************/
00008 
00011 
00014 
00015 
00016 #ifndef aggregateOrganizationController_H_
00017 #define aggregateOrganizationController_H_
00018 
00019 #include "vrfmodel/orgCtlr.h"
00020 #include "vrfobjcore/simRadio.h"
00021 #include "vrfutil/entIdIntAssocLst.h"
00022 #include "vrfobjcore/cmdChanRadio.h"
00023 
00024 class DtSimMessage;
00025 
00026 
00032 #include "vrfmodel/vrfmodelDefines.h"
00033 class DT_DLL_vrfmodel DtAggregateOrganizationController : public DtOrganizationController
00034 {
00035 
00036 private:
00037 
00039    DtAggregateOrganizationController();
00041    DtAggregateOrganizationController(
00042       const DtAggregateOrganizationController& orig);
00044    DtAggregateOrganizationController& operator=(
00045       const DtAggregateOrganizationController& orig);
00046 
00047 public:
00048 
00051    DtAggregateOrganizationController(const DtString& name, 
00052       DtVrfObject* owner, 
00053       DtSimManager* simManager, 
00054       DtComponentDescriptor* desc = 0,
00055       DtReaderWriterRegistry* parentRegistry = 0);
00056 
00058    virtual ~DtAggregateOrganizationController();
00059 
00062    virtual DtString type() const;
00063 
00068    virtual void tick();
00069 
00072    virtual void setRadio(DtSimBaseRadio * radio);
00073 
00077    virtual void onSetReorganize(DtSimMessage * msg);
00078 
00079 public:
00080 
00081    virtual void registerWithOrgManager();
00082    virtual void unregisterWithOrgManager();
00083 
00084    static void subordinatesChangedCallback(DtEntityIdentifier entId,
00085       void *usr);
00086 
00088    static void reorganizeCallback(DtSimMessage * msg,
00089    void * usrData);
00090 
00094    static DtSimComponent * creator(const DtString& name, 
00095       DtVrfObject* owner,
00096       DtSimManager* simManager, 
00097       DtComponentDescriptor* desc = 0,
00098       DtReaderWriterRegistry* parentRegistry = 0);
00099 
00100 protected:
00101 
00102    virtual void processSubordinatesChangedCallback(DtEntityIdentifier entId);
00103 
00106    //virtual bool checkSubordinates();
00107 
00109    virtual void initiateAllSubordinates();
00110 
00114    virtual void initiateNewSubordinate(DtVrfObject* subordinate, int designator);
00115 
00118    virtual void setCommandNetRadioChannel();
00119 
00121    virtual int nextAvaliableDesignator();
00122 
00126    virtual void reorganize();
00127 
00130    virtual void sendSetDesignator(int designator, const DtString& objectName);
00131 
00134    virtual bool reorganizeNeeded();
00135 
00136 protected:
00137 
00140    bool myRegisteredWithOrgManager;
00141    DtCommandChannelRadio* myCommandRadio;
00142 };
00143 
00144 #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)