13 #ifndef DtSceneManager_H_
14 #define DtSceneManager_H_
21 #include <boost/smart_ptr/detail/atomic_count.hpp>
22 #include <boost/thread/condition.hpp>
23 #include <boost/thread/mutex.hpp>
24 #include <boost/signals.hpp>
25 #include <boost/unordered_map.hpp>
33 class DtAsynchronousAgentManager;
34 class DtCoordinateSystem;
38 class DtAgentUpdateResolverInterface;
63 virtual void updateScene(
DtMessage& message);
75 virtual bool sceneObjectIsVisible(
DtElementID id)
const;
90 void checkForIgLock(
bool forceLock =
false);
97 virtual DtDe& acquireLockedIg();
104 virtual void releaseLockedIg();
132 virtual unsigned char acquireNamespaceId(
134 const std::string& ownerName);
138 virtual void releaseNamespaceId(
unsigned char nsId);
176 virtual void localEncodeAndUpdateScene();
179 virtual void createObject(
const std::string& className,
DtUniqueID id);
189 typedef boost::function< void (DtAgentManagerInterface*) >
202 typedef boost::unordered_map<DtUniqueID,AsynchronousInterfaceEntry>
NamespaceMap;
203 typedef boost::unordered_map<DtUniqueID,DtAgentUpdateResolverInterface*>
UpdaterMap;