X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=simgear%2Fhla%2FRTIObjectClass.cxx;h=8dca02675a01e3c75e7e770b4c0787bc70c995d8;hb=201cb61f842ef50a19438e3872ba22e588fa1afc;hp=dceb3029a9a818444447b0ce2458f8777a739aef;hpb=85e58b4a49d3c3b74afed3c766b47b65a6a95a66;p=simgear.git diff --git a/simgear/hla/RTIObjectClass.cxx b/simgear/hla/RTIObjectClass.cxx index dceb3029..8dca0267 100644 --- a/simgear/hla/RTIObjectClass.cxx +++ b/simgear/hla/RTIObjectClass.cxx @@ -1,4 +1,4 @@ -// Copyright (C) 2009 - 2010 Mathias Froehlich - Mathias.Froehlich@web.de +// Copyright (C) 2009 - 2012 Mathias Froehlich - Mathias.Froehlich@web.de // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Library General Public @@ -15,14 +15,21 @@ // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. // +#ifdef HAVE_CONFIG_H +# include +#endif + +#include + #include "RTIObjectClass.hxx" +#include "simgear/debug/logstream.hxx" #include "RTIObjectInstance.hxx" namespace simgear { -RTIObjectClass::RTIObjectClass(HLAObjectClass* hlaObjectClass) : - _hlaObjectClass(hlaObjectClass) +RTIObjectClass::RTIObjectClass(HLAObjectClass* objectClass) : + _objectClass(objectClass) { } @@ -33,35 +40,31 @@ RTIObjectClass::~RTIObjectClass() void RTIObjectClass::discoverInstance(RTIObjectInstance* objectInstance, const RTIData& tag) const { - SGSharedPtr hlaObjectClass = _hlaObjectClass.lock(); - if (!hlaObjectClass.valid()) { + if (!_objectClass) { SG_LOG(SG_NETWORK, SG_WARN, "RTI: Invalid hla object class pointer in RTIObjectClass::discoverInstance()."); return; } - hlaObjectClass->discoverInstance(objectInstance, tag); - objectInstance->requestObjectAttributeValueUpdate(); + _objectClass->_discoverInstance(objectInstance, tag); } void RTIObjectClass::startRegistration() const { - SGSharedPtr hlaObjectClass = _hlaObjectClass.lock(); - if (!hlaObjectClass.valid()) { + if (!_objectClass) { SG_LOG(SG_NETWORK, SG_WARN, "RTI: Invalid hla object class pointer in RTIObjectClass::startRegstration()."); return; } - hlaObjectClass->startRegistrationCallback(); + _objectClass->_startRegistration(); } void RTIObjectClass::stopRegistration() const { - SGSharedPtr hlaObjectClass = _hlaObjectClass.lock(); - if (!hlaObjectClass.valid()) { + if (!_objectClass) { SG_LOG(SG_NETWORK, SG_WARN, "RTI: Invalid hla object class pointer in RTIObjectClass::stopRegistration()."); return; } - hlaObjectClass->stopRegistrationCallback(); + _objectClass->_stopRegistration(); } }