35#ifndef ANATOMIST_APPLICATION_ANATOMIST
36#define ANATOMIST_APPLICATION_ANATOMIST
39#include <aims/getopt/getopt2.h>
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 =
"",
221 friend class ::ReferentialWindow;
222 friend class anatomist::internal::AnatomistPrivate;
223 struct Anatomist_privateData;
225 void unregisterReferentialWindow();
227 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,...
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)
void setDefaultWindowsBlock(QWidget *wid)
const CommandWriter & historyWriter() const
std::set< AWindow * > getWindowsInGroup(int group)
Retruns the set of windows in a given group.
virtual bool glMakeCurrent()
bool hasReferential(const Referential *)
const PaletteList & palettes() const
std::string makeObjectName(const std::string &name)
Builds a unique object name.
Referential * centralReferential() const
const std::set< Referential * > & getReferentials() const
void registerObject(AObject *obj, int inctrl=1)
void NotifyWindowChange(AWindow *win)
bool hasObject(const AObject *obj) const
void NotifyMapWindow(AWindow *)
Transformation * getTransformation(const Referential *, const Referential *)
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)
QWidget * defaultWindowsBlock() const
std::string language() 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,...
friend class ::ReferentialWindow
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)
std::set< AObject * > destroyObjects(const std::set< AObject * > &, bool verbose=true)
Destroys an object if possible.
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)
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()
bool exitOnQuit() const
if true, closing the control window will abruptly exit the program.
void updateFileDialogObjectsFilter()
setup/update extensions list for readable files
QWidget * getQWidgetAncestor() const
Gets an empty QWidget that is created in Anatomist application to become a default parent for all Ana...
const Transformation * getTransformation(const Referential *, const Referential *) const
std::list< AObject * > loadObject(const std::string &filename, const std::string &objname="", carto::Object options=carto::none())
void releaseObject(AObject *obj)
releases the reference counter kept in Anatomist application for the given object,...
std::vector< float > lastFullPosition(const Referential *toref=0) const
CommandWriter & historyWriter()
void mapObject(AObject *obj)
Makes an object visible (ie seen in control window(s))
std::set< AObject * > getObjects() const
void setLastPosition(const Point3df &pos, Referential *fromref=0)
ControlWindow * getControlWindow() const
int destroyObject(AObject *, bool verbose=true)
Destroys an object if possible.
void unregisterWindow(AWindow *win)
const std::string & objectsFileFilter() const
static std::string libraryVersionString()
shorter version matching the library number (2 numbers: "1.31")
void unregisterReferential(Referential *ref)
Anatomist(int argc, const char **argv, const std::string &documentation)
void setExitOnQuit(bool x)
virtual void UpdateInterface()
void NotifyUnmapWindow(AWindow *)
virtual void createReferentialWindow()
Create the referential window and update it.
GlobalConfiguration * config()
void setLastPosition(const std::vector< float > &pos, Referential *fromref=0)
ReferentialWindow * getReferentialWindow() const
std::set< AWindow * > getWindows() const
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.
AimsVector< float, 3 > Point3df