![]() |
VR-Link API Documentation for HLA 1.3
|
After we create a ReflectedTest class, we need to create a ReflectedTestList class that knows how to create and manage ReflectedTests.
This class is derived from DtReflectedObjectList in refTestList.h and refTestList.cxx.
/********************************************************************* ** Copyright (c) 1992-2010 VT MAK ** All rights reserved. *********************************************************************/ #pragma once #if DtHLA #include <vl/hRefObjList.h> #include "refTest.h" class ReflectedTestList : public DtReflectedObjectList { public: ReflectedTestList(DtExerciseConn* exConn); virtual ~ReflectedTestList(); #if DtHLA_1516 virtual ReflectedTest* lookup(RTI::ObjectInstanceHandle id); #else virtual ReflectedTest* lookup(RTI::ObjectHandle id); #endif virtual ReflectedTest* lookup(const DtGlobalObjectDesignator& objName); virtual ReflectedTest* first() const; virtual ReflectedTest* last() const; virtual void addTestAdditionCallback( TestCallbackFunction cb, void* userData); virtual void removeTestAdditionCallback( TestCallbackFunction cb, void* userData); virtual void addTestRemovalCallback( TestCallbackFunction cb, void* userData); virtual void removeTestRemovalCallback( TestCallbackFunction cb, void* userData); protected: virtual DtReflectedObject* newReflectedObject(DtHlaObject* obj) const; }; #endif
/********************************************************************* ** Copyright (c) 1992-2010 VT MAK ** All rights reserved. *********************************************************************/ #if DtHLA #include "refTestList.h" ReflectedTestList::ReflectedTestList( DtExerciseConn* exConn) : DtReflectedObjectList(exConn) { // Tell the base class that we will be managing the FOM class "Test". addObjectClassByName("Test"); } ReflectedTestList::~ReflectedTestList() { } #if DtHLA_1516 ReflectedTest* ReflectedTestList::lookup(RTI::ObjectInstanceHandle id) #else ReflectedTest* ReflectedTestList::lookup(RTI::ObjectHandle id) #endif { return (ReflectedTest*) lookupObj(id); } ReflectedTest* ReflectedTestList::lookup( const DtGlobalObjectDesignator& objName) { return (ReflectedTest*) lookupObj(objName); } ReflectedTest* ReflectedTestList::first() const { return (ReflectedTest*) firstObj(); } ReflectedTest* ReflectedTestList::last() const { return (ReflectedTest*) lastObj(); } void ReflectedTestList::addTestAdditionCallback( TestCallbackFunction cb, void* userData) { addObjectAdditionCallback( (DtReflectedObjectCallbackFunction) cb, userData); } void ReflectedTestList::removeTestAdditionCallback( TestCallbackFunction cb, void* userData) { removeObjectAdditionCallback( (DtReflectedObjectCallbackFunction) cb, userData); } void ReflectedTestList::addTestRemovalCallback( TestCallbackFunction cb, void* userData) { addObjectRemovalCallback( (DtReflectedObjectCallbackFunction) cb, userData); } void ReflectedTestList::removeTestRemovalCallback( TestCallbackFunction cb, void* userData) { removeObjectRemovalCallback( (DtReflectedObjectCallbackFunction) cb, userData); } DtReflectedObject* ReflectedTestList::newReflectedObject( DtHlaObject* obj) const { return new ReflectedTest(obj, myExConn); } #endif