MAK RTIspy API Documentation for HLA 1516
objDdmMgr13.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2001 MaK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: objDdmMgr13.h,v $ $Revision: 1.9 $ $State: Exp $
00007 *********************************************************************/
00008 
00009 #ifndef objDdmMgr13_H_
00010 #define objDdmMgr13_H_
00011 #ifdef DDM
00012 #ifdef DtIFSPEC13
00013 
00016 
00017 #include "objDdmMgr.h"
00018 
00024 class DT_DLL_LRC DtObjectDataDistMgr13 : public DtObjectDataDistMgr
00025 {
00026 protected:
00027 
00029    DtObjectDataDistMgr13(DtFederateMgr* fedMgr);
00030 
00031 public:
00032 
00034    virtual ~DtObjectDataDistMgr13();
00035 
00036 private:
00037    
00039    DtObjectDataDistMgr13(DtObjectDataDistMgr13 const& );
00040 
00042    DtObjectDataDistMgr13& operator= (DtObjectDataDistMgr13 const& );
00043 
00044 public:
00045 
00047    virtual DtObjectInstanceHandle registerObjectInstanceWithRegion(
00048       DtObjectClassHandle theClass,
00049       DtAttributeHandle theAttributes[],
00050       DtRegion13 *theRegions[],
00051       unsigned long theNumberOfHandles,
00052       const char *theObject);
00053 
00055    virtual void associateRegionForUpdates(
00056       DtRegion& theRegion,
00057       DtObjectInstanceHandle theObject, 
00058       const DtAttributeHandleSet& theAttributes);
00059 
00061    virtual void unassociateRegionForUpdates(
00062       DtRegion& theRegion, DtObjectInstanceHandle theObject);
00063 
00065    virtual void subscribe(
00066       DtObjectClassHandle theClass,
00067       const DtAttributeHandleSet& attributeList,
00068       bool active);
00069 
00071    virtual void subscribeObjectClassAttributesWithRegion (
00072       DtObjectClassHandle theClass,
00073       DtRegion &theRegion,
00074       const DtAttributeHandleSet &attributeList,
00075       bool active);
00076 
00078    virtual void unsubscribeClass(
00079       DtObjectClassHandle theClass);
00080 
00082    virtual void unsubscribeObjectClassWithRegion (
00083    DtObjectClassHandle theClass, DtRegion &theRegion);
00084 
00086    virtual void requestClassAttributeValueUpdateWithRegion (
00087       DtObjectClassHandle theClass,
00088       const DtAttributeHandleSet &theAttributes,
00089       const DtRegion &theRegion);
00090 
00091 public:
00092 
00094    static DtObjectMgr* create(DtFederateMgr* fedMgr);
00095 
00096 protected:
00097 
00099    virtual bool isValidRegionContext(DtObjectClassInfo const& classDesc,
00100       DtAttributeHandle attrHandle, DtDistributedRegion const& theRegion) const;
00101 
00104    virtual DtRegionEntryListWithAttributes* getRegionList(MAKRti::DtList& masterList,
00105       DtRegionEntryListWithAttributes* seedList, DtRegionRealization* region);
00106 
00109    virtual void collectRegionLists(
00110       DtRtiObject* object,
00111       DtAttributeHandle theAttributes[],
00112       DtRegion13 *theRegions[],
00113       unsigned long theNumberOfHandles,
00114       MAKRti::DtList& regionSets,
00115       DtAttributeHandleSet& defaultAttrSet);
00116 
00119    virtual DtAttributeHandleSet pubAttributesToRemove(
00120       DtRegionRealization& region, DtRtiObject& object,
00121       const DtAttributeHandleSet& excludedAttrs);
00122 
00125    virtual DtAttributeHandleSet subAttributesToRemove(
00126       DtRegionRealization& region, DtObjectClassInfo& classDesc,
00127       const DtAttributeHandleSet& attributes);
00128 
00130    virtual void associateRegionToAttributes(
00131       DtRegionRealization& theRegion,
00132       DtRtiObject* obj, 
00133       const DtAttributeHandleSet& theAttributes);
00134 
00136    virtual void unassociateRegionFromAttributes(DtRegionRealization& theRegion,
00137       DtRtiObject& theObject, const DtAttributeHandleSet& theAttributes);
00138 
00140    void subscribeObjectClassAttributesWithRegionActive(
00141       DtObjectClassInfo* classDesc, DtRegionRealization* region,
00142       const DtAttributeHandleSet &theAttributes);
00143 
00145    void subscribeObjectClassAttributesWithRegionPassive(
00146       DtObjectClassInfo* classDesc, DtRegionRealization* region,
00147       const DtAttributeHandleSet &theAttributes);
00148 
00150    virtual void unsubscribeObjectClassAttributesFromRegion  (
00151       DtObjectClassInfo&    theClass,
00152       DtRegionRealization&  theRegion,
00153       const DtAttributeHandleSet& theAttributes);
00154 };
00155 
00156 #endif //! !DtIFSPEC1516
00157 #endif //! DDM
00158 #endif //! objDdmMgr13_H_
00159 
00160 

Document ID: Generated on Thu Jun 14 14:15:04 EDT 2012 from SVN revision 116116
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)