MAK RTIspy API Documentation for HLA Evolved
repObjInf.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 2001 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *********************************************************************/
00005 /*********************************************************************
00006 ** $RCSfile: repObjInf.h,v $ $Revision: 1.10 $ $State: Exp $
00007 *********************************************************************/
00008 #ifdef DtMOM
00009 
00012 
00013 #ifndef DtReportObjectInformationInteraction_H_
00014 #define DtReportObjectInformationInteraction_H_
00015 
00016 #include "rtiMsConfig.h"
00017 #include "internalTypes.h"
00018 #include "mInteraction.h"
00019 #include <vlutil/vlList.h>
00020 
00021 class DtMomInterCbMgr;
00022 class DtReportObjectInformationInteraction;
00023 typedef void (*DtReportObjectInformationInteractionCb)
00024    (const DtReportObjectInformationInteraction& inter, void* usr);
00025 
00026 class DT_DLL_LRC DtReportObjectInformationInteraction :
00027    public DtReportInteraction
00028 {
00029 public:
00030 
00032    DtReportObjectInformationInteraction();
00033 
00035    virtual ~DtReportObjectInformationInteraction();
00036 
00038    DtReportObjectInformationInteraction(
00039       const DtReportObjectInformationInteraction& orig);
00040  
00042    DtReportObjectInformationInteraction& operator=(
00043       const DtReportObjectInformationInteraction& orig);
00044 
00047    virtual const DtPhvps& phvps();
00048 
00051    virtual bool setFromPhvps(const DtPhvps& phvps);
00052 
00055    virtual DtObjectClassHandle registeredClass() const;
00056    virtual void setRegisteredClass(DtObjectClassHandle data);
00057    
00060    virtual DtObjectClassHandle knownClass() const;
00061    virtual void setKnownClass(DtObjectClassHandle data);
00062    
00064    virtual DtAttributeHandleSet const & ownedAttributeList() const;
00065    virtual DtAttributeHandleSet & ownedAttributeList();
00066    virtual void setOwnedAttributeList(DtAttributeHandleSet const & set);
00067    
00069 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
00070    virtual DtObjectInstanceHandle objectInstance() const;
00071    virtual void setObjectInstance(DtObjectInstanceHandle data);
00072 #else
00073    virtual MAKRti::DtString const & objectInstance() const;
00074    virtual void setObjectInstance(MAKRti::DtString const & data);
00075 #endif
00076    
00077      
00078 public:
00080    static DtReportInteraction* create();
00081 
00083    static void addCallback(DtMomInterCbMgr* callBackManager,
00084       DtReportObjectInformationInteractionCb cb, void* usr);
00085    static void removeCallback(DtMomInterCbMgr* callBackManager,
00086       DtReportObjectInformationInteractionCb cb, void* usr);
00087 
00088 protected:
00089 
00092    virtual void encodeRegisteredClass(
00093       const DtMomInteraction& data,
00094       DtPhvps* parameters,
00095       DtParameterHandle parameterHandle);
00096    
00098    virtual void encodeObjectInstance(
00099       const DtMomInteraction& data,
00100       DtPhvps* parameters,
00101       DtParameterHandle parameterHandle);
00102    
00105    virtual void encodeKnownClass(
00106       const DtMomInteraction& data,
00107       DtPhvps* parameters,
00108       DtParameterHandle parameterHandle);
00109    
00113    virtual void encodeOwnedAttributeList(
00114       const DtMomInteraction& data,
00115       DtPhvps* parameters,
00116       DtParameterHandle parameterHandle);
00117 
00120    virtual void decodeRegisteredClass(
00121       DtMomInteraction* data,
00122       const DtPhvps& parameters,
00123       int index);
00124    
00126    virtual void decodeObjectInstance(
00127       DtMomInteraction* data,
00128       const DtPhvps& parameters,
00129       int index);
00130    
00133    virtual void decodeKnownClass(
00134       DtMomInteraction* data,
00135       const DtPhvps& parameters,
00136       int index);
00137 
00141    virtual void decodeOwnedAttributeList(
00142       DtMomInteraction* data,
00143       const DtPhvps& parameters,
00144       int index);
00145 
00146 public:
00147    static const char* theInteractionName;
00148 
00149 protected:
00151    DtObjectClassHandle myKnownClass;
00152    DtObjectClassHandle myRegisteredClass;
00153    DtAttributeHandleSet myOwnedAttributeList;
00154 #if defined(DtIFSPEC1516) || defined(DtIFSPEC1516E)
00155    DtObjectInstanceHandle myObjectInstance;
00156 #else
00157    MAKRti::DtString myObjectInstance;
00158 #endif
00159 
00160    const char *REGISTERED_CLASS_PARAMETER_NAME;
00161    const char *OWNED_ATTRIBUTE_LIST_PARAMETER_NAME;
00162    const char *OBJECT_INSTANCE_PARAMETER_NAME;
00163    const char *KNOWN_CLASS_PARAMETER_NAME;
00164 
00165 };
00166 
00167 #endif
00168 #endif

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)