35 #ifndef ANATOMIST_APPLICATION_ANATOMIST
36 #define ANATOMIST_APPLICATION_ANATOMIST
57 class GlobalConfiguration;
62 class AnatomistPrivate;
82 const std::string &documentation );
127 bool verbose =
true );
147 std::list<AObject *>
loadObject(
const std::string & filename,
148 const std::string & objname =
"",
216 friend class ::ReferentialWindow;
217 friend class anatomist::internal::AnatomistPrivate;
218 struct Anatomist_privateData;
220 void unregisterReferentialWindow();
222 Anatomist_privateData *_privData;
anatomist::Anatomist *ANATOMIST_API theAnatomist
Pointer to the Anatomist application.
The ControlWindow class is the Anatomist control window.
Window displaying referentials and transformations between them.
Base Anatomist object (abstract)
Abstract base class Anatomist window.
The Anatomist class holds information about all data handled by Anatomist: the objects,...
std::set< AWindow * > getWindows() const
int groupWindows(std::set< AWindow * > &winL, int groupnum=-1)
Links the given windows, and returns the new group number.
void unregisterObjectName(const std::string &name)
void registerReferential(Referential *ref)
Point3df lastPosition(const Referential *toref=0) const
void registerSubObject(MObject *parent, AObject *obj)
ControlWindow * getControlWindow() const
virtual bool glMakeCurrent()
bool hasReferential(const Referential *)
Transformation * getTransformation(const Referential *, const Referential *)
std::string makeObjectName(const std::string &name)
Builds a unique object name.
void registerObject(AObject *obj, int inctrl=1)
void NotifyWindowChange(AWindow *win)
bool hasObject(const AObject *obj) const
const std::set< Referential * > & getReferentials() const
void NotifyMapWindow(AWindow *)
CommandWriter & historyWriter()
void unmapObject(AObject *obj)
Makes an object unvisible (ie not seen in control window(s))
void lockObjects(bool locked=true)
lock / unlock the objects list mutex, used in threaded load operations
void NotifyObjectChange(AObject *obj)
const CommandWriter & historyWriter() const
std::string language() const
const PaletteList & palettes() const
int userLevel() const
The user level drives the GUI to show or hide some features for simplicity or richness.
bool destroying() const
returns true if the Anatomist application is currently being destroyed
void registerObjectName(const std::string &name, AObject *obj)
void releaseWindow(AWindow *win)
releases the reference counter kept in Anatomist application for the given window,...
const std::string & objectsFileFilter() const
const Transformation * getTransformation(const Referential *, const Referential *) const
static std::string versionString()
full version ("1.30.3" or "1.31beta")
void unregisterObject(AObject *obj)
void takeObjectRef(AObject *obj)
change object reference type to WeakShared (standard in anatomist)
ReferentialWindow * getReferentialWindow() const
void setCursor(Cursor c)
Sets the shape of the mouse cursor on every window.
void takeWindowRef(AWindow *obj)
change window reference type to WeakShared (standard in anatomist)
void registerWindow(AWindow *win)
std::set< AObject * > getObjects() const
void addObjectsFileFilter(const std::string &filter)
void ungroupWindows(int group)
Unlinks the windows with the given group number.
virtual void createControlWindow()
bool hasWindow(const AWindow *win) const
virtual void initialize()
QWidget * getQWidgetAncestor() const
Gets an empty QWidget that is created in Anatomist application to become a default parent for all Ana...
void updateFileDialogObjectsFilter()
setup/update extensions list for readable files
Referential * centralReferential() const
void releaseObject(AObject *obj)
releases the reference counter kept in Anatomist application for the given object,...
void mapObject(AObject *obj)
Makes an object visible (ie seen in control window(s))
void setLastPosition(const Point3df &pos, Referential *fromref=0)
int destroyObject(AObject *, bool verbose=true)
Destroys an object if possible.
void unregisterWindow(AWindow *win)
static std::string libraryVersionString()
shorter version matching the library number (2 numbers: "1.31")
void unregisterReferential(Referential *ref)
std::list< AObject * > loadObject(const std::string &filename, const std::string &objname="", carto::Object options=carto::none())
Anatomist(int argc, const char **argv, const std::string &documentation)
virtual void UpdateInterface()
void NotifyUnmapWindow(AWindow *)
std::set< AWindow * > getWindowsInGroup(int group)
Retruns the set of windows in a given group.
virtual void createReferentialWindow()
Create the referential window and update it.
GlobalConfiguration * config()
std::vector< float > lastFullPosition(const Referential *toref=0) const
void setLastPosition(const std::vector< float > &pos, Referential *fromref=0)
std::set< AObject * > destroyObjects(const std::set< AObject * > &, bool verbose=true)
Destroys an object if possible.
CommandWriter is a helper class logging commands into a history file.
This class stores global configuration settings, read by default from $HOME/.anatomist/config/setting...
Multi-object : base abstract class for objects that contain others.
Referential: marker for transformations, with an associated color.