OpenLexocad  28.0
SharedObject.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <map>
4 
5 namespace Core
6 {
7 class DocObject;
8 typedef std::map<Core::DocObject*, Core::DocObject*> DocObjectMap;
26 class LX_CORE_EXPORT SharedObject
27 {
28 public:
29  friend class CoreDocument;
30  virtual ~SharedObject() = default;
31 
32 protected:
34 };
35 
36 } // namespace Core
Core::CoreDocument
Definition: CoreDocument.h:269
Core::DocObjectMap
std::map< Core::DocObject *, Core::DocObject * > DocObjectMap
Definition: DocObject.h:50
Core::SharedObject
The SharedObject is an interface that must be implemented by all classes that want to share their res...
Definition: SharedObject.h:27
Core::SharedObject::~SharedObject
virtual ~SharedObject()=default
Core::DocObject
Definition: DocObject.h:54
Core
Definition: Base.h:5
Core::SharedObject::copyShared
virtual Core::DocObject * copyShared(Core::CoreDocument *toDoc, DocObjectMap &copyMap)=0