35 #ifndef ANATOMIST_APPLICATION_ANATOMIST 36 #define ANATOMIST_APPLICATION_ANATOMIST 57 class GlobalConfiguration;
62 class AnatomistPrivate;
82 const std::string &documentation );
85 virtual void initialize();
87 static std::string versionString();
89 static std::string libraryVersionString();
94 virtual void Refresh();
96 void NotifyMapWindow(
AWindow* );
97 void NotifyUnmapWindow(
AWindow* );
99 virtual void createControlWindow();
102 QWidget* getQWidgetAncestor()
const;
105 virtual void createReferentialWindow();
108 bool hasWindow(
const AWindow* win )
const;
110 int groupWindows( std::set<AWindow*> & winL,
int groupnum = -1 );
112 void ungroupWindows(
int group );
114 std::set<AWindow*> getWindowsInGroup(
int group );
115 void NotifyWindowChange(
AWindow* win );
123 bool hasObject(
const AObject* obj )
const;
125 void mapObject(
AObject* obj );
127 void unmapObject(
AObject* obj );
129 virtual void UpdateInterface();
132 std::string makeObjectName(
const std::string & name );
133 std::set<AObject* > getObjects()
const;
134 std::set<AWindow*> getWindows()
const;
135 const std::set<Referential*> & getReferentials()
const;
142 std::list<AObject *> loadObject(
const std::string & filename,
143 const std::string & objname =
"",
146 void registerObject(
AObject* obj,
int inctrl=1 );
147 void unregisterObject(
AObject* obj );
153 void releaseObject(
AObject* obj );
155 void takeObjectRef(
AObject* obj );
156 void NotifyObjectChange(
AObject* obj );
160 void registerWindow(
AWindow* win );
161 void unregisterWindow(
AWindow* win );
167 void releaseWindow(
AWindow* win );
169 void takeWindowRef(
AWindow* obj );
170 void registerObjectName(
const std::string& name,
AObject* obj );
171 void unregisterObjectName(
const std::string& name );
173 bool initialized()
const;
180 void setCursor(
Cursor c );
182 const std::string & objectsFileFilter()
const;
183 void addObjectsFileFilter(
const std::string & filter );
185 virtual bool glMakeCurrent();
187 std::string language()
const;
195 int userLevel()
const;
196 void setUserLevel(
int );
198 void setLastPosition(
const std::vector<float> & pos,
201 std::vector<float> lastFullPosition(
const Referential* toref = 0 )
const;
203 bool destroying()
const;
205 void updateFileDialogObjectsFilter();
207 void lockObjects(
bool locked=
true );
211 friend class ::ReferentialWindow;
212 friend class anatomist::internal::AnatomistPrivate;
213 struct Anatomist_privateData;
215 void unregisterReferentialWindow();
217 Anatomist_privateData *_privData;
The Anatomist class holds information about all data handled by Anatomist: the objects, the windows, and other application-wide lists.
Base Anatomist object (abstract)
Multi-object : base abstract class for objects that contain others.
Abstract base class Anatomist window.
This class stores global configuration settings, read by default from $HOME/.anatomist/config/setting...
CommandWriter is a helper class logging commands into a history file.
anatomist::Anatomist *ANATOMIST_API theAnatomist
Pointer to the Anatomist application.
Window displaying referentials and transformations between them.
The ControlWindow class is the Anatomist control window.
Referential: marker for transformations, with an associated color.