Files
GDevelop/Extensions/LinkedObjects/LinkedObjectsManager.h
T
Florian e26bbfa7e4 Exchanged all french messages with their English counterparts.
git-svn-id: svn://localhost@845 8062f311-0dae-4547-b526-b8ab9ac864a5
2012-09-20 19:57:08 +00:00

29 lines
787 B
C++

#ifndef LINKEDOBJECTSMANAGER_H
#define LINKEDOBJECTSMANAGER_H
class ObjectsLinksManager
{
public:
void LinkObjects(boost::weak_ptr<Object> a, boost::weak_ptr<Object> b);
void RemoveLinkBetween(boost::weak_ptr<Object> a, boost::weak_ptr<Object> b);
void RemoveAllLinksOf(boost::weak_ptr<Object> object);
std::vector<Object*> GetAllRawPointersToObjectsLinkedWith(boost::weak_ptr<Object> object);
std::vector<Object*> GetRawPointersToObjectsLinkedWith(boost::weak_ptr<Object> object, std::string linkedName);
void ClearAll();
static std::map < RuntimeScene* , ObjectsLinksManager > managers;
private:
std::map < boost::weak_ptr<Object>, std::set< boost::weak_ptr<Object> > > links;
};
#endif // LINKEDOBJECTSMANAGER_H