Core Class Reference

#include <OpenFlipper/Core/Core.hh>

Collaboration diagram for Core:
Collaboration graph
[legend]

List of all members.

Public Slots

scriptable slots

Get a Pointer to the Plugin with given _name (if it is loaded)

void updateView ()
 Called when a plugin requests an update in the viewer.
void clearAll ()
 Clear all data objects.
void exitApplication ()
 exit the current application
void fullscreen (bool _state)
 set fullscreen mode
void showViewModeControls (bool _show)
 Show or Hide the viewmode control widget.
void loggerState (int _state)
 Change the logging window state.
void enableOpenMeshErrorLog (bool _state)
 Enable or disable OpenMesh error logging.
void showToolbox (bool _state)
 Show or hide toolbox.
void multiViewMode (int _mode)
 Switch the multiView Mode.
void restrictFrameRate (bool _enable)
 Enable or disable framerate restriction.
void setMaxFrameRate (int _rate)
 set the maximal framerate ( automatically enables framerate restriction )
void snapshotBaseFileName (const QString &_fname, unsigned int _viewerId=0)
void snapshotFileType (const QString &_type, unsigned int _viewerId=0)
 Set the file type for snapshots.
void snapshotCounterStart (const int _counter, unsigned int _viewerId=0)
 Set the start index for the snapshot counter.
void snapshot (unsigned int _viewerId=0, int _width=0, int _height=0, bool _alpha=false, bool _hideCoordsys=false)
void applicationSnapshot ()
 Take a snapshot from the whole app.
void applicationSnapshotName (QString _name)
 Set the baseName for the application snapshot.
void viewerSnapshot ()
 Take a snapshot from all viewers.
void resizeViewers (int _width, int _height)
 resize the examinerViewer
void resizeApplication (int _width, int _height)
 resize the whole Application
void writeVersionNumbers (QString _filename)
 write the current versions of all plugins to ini file
QList< int > objectList (QString _selection, QStringList _types)
 return the list of available object that has the given selection and type
Scripting functions for controlling view modes

void addViewModeToolboxes (QString _modeName, QString _toolboxList)
 Scripting function to set toolboxes in a view mode.
void addViewModeToolbars (QString _modeName, QString _toolbarList)
 Scripting function to set toolbars in a view mode.
void addViewModeContextMenus (QString _modeName, QString _contextMenuList)
 Scripting function to set context menus in a view mode.
void addViewModeIcon (QString _modeName, QString _iconName)
 Scripting function to set an icon for a view mode.
void setToolBoxSide (QString _side)
 Scripting function to set the side of the main window on which the toolbox should be displayed.
void setToolBoxActive (QString _toolBoxName, bool _active)
 Scripting function to set the side of the main window on which the toolbox should be displayed.
Load / Save slots

bool saveObject (int _id, QString _filename)
void saveObject (int _id, QString _filename, int _pluginID)
void saveObjects (IdList _ids, QString _filename, int _pluginID)
bool saveObjectTo (int _id, QString _filename)
bool saveObjectsTo (IdList _ids, QString _filename)
void saveAllObjects ()
 Slot for saving objects from Menu.
void saveAllObjectsTo ()
 Slot for saving objects to a new location.
void saveSettings ()
 Save current status to a settings file.
void loadObject ()
 Open Load Widget.
void loadSettings ()
 Load status from file.
void loadSettings (QString _filename)
 Load status from file.
int getObjectId (QString _filename)
 Get object id from filename.

Signals

Signals send to Plugins

void allCleared ()
 Signal send to plugins when whole scene is cleared.
void signalObjectUpdated (int)
 When this Signal is emitted all Plugins are informed that the object list changed.
void signalObjectUpdated (int, const UpdateType)
 When this Signal is emitted all Plugins are informed that some type of update was performed on an object.
void PluginWheelEvent (QWheelEvent *, const std::string &)
 When this Signal is emitted when a Wheel Event occures.
void PluginMouseEvent (QMouseEvent *)
 When this Signal is emitted when a Mouse Event occures.
void PluginMouseEventLight (QMouseEvent *)
 Emitted when an light event occurs.
void objectSelectionChanged (int)
 This signal is emitted if the object has been changed (source/target).
void pluginViewChanged ()
 This signal is emitted if one of the viewers updated its view.
void addTexture (QString, QString, uint, int)
 The texture with the given name and filename has been added.
void addTexture (QString, QString, uint)
 The texture with the given name and filename has been added.
void addMultiTexture (QString _textureGroup, QString _name, QString _filename, int _id, int &_textureId)
 The texture with the given name and filename has been added.
void updateTexture (QString, int)
 Tell the plugins to update the given texture.
void updateAllTextures ()
 Update all textures in the plugins.
void updatedTextures (QString, int)
 This Signal is send to the plugins if a texture has been updated.
void setTextureMode (QString _textureName, QString _mode, int _id)
 A texture mode should be changed.
void setTextureMode (QString _textureName, QString _mode)
 A texture mode should be changed.
void switchTexture (QString, int)
 Switch Texture Plugins to a given Mode.
void switchTexture (QString)
 Switch Texture Plugins to a given Mode.
void textureChangeImage (QString _textureName, QImage &_image)
 Change the image for a given texture.
void textureChangeImage (QString _textureName, QImage &_image, int _id)
 Change the image for a given texture.
void textureGetImage (QString _textureName, QImage &_image)
 fetch texture image
void textureGetImage (QString _textureName, QImage &_image, int _id)
 fetch texture image
void textureIndex (QString _textureName, int _id, int &_index)
 get the texture index
void textureIndexPropertyName (int _id, QString &_propertyName)
 get the texture index property name
void textureName (int _id, int _textureIndex, QString &_textureName)
 get the texture name
void textureFilename (int _id, QString _textureName, QString &_textureFilename)
 get the texture's filename
void getCurrentTexture (int _id, QString &_textureName)
 get current texture
void getSubTextures (int _id, QString _multiTextureName, QStringList &_subTextures)
 get a multi-texture's sub textures
void addSelectionEnvironment (QString _modeName, QString _description, QIcon _icon, QString &_handleName)
 SelectionInterface: This signal is emitted when a new toolbutton should be added.
void registerType (QString _handleName, DataType _type)
 SelectionInterface: This signal is emitted when a data type should be registered for a selection mode.
void addPrimitiveType (QString _handleName, QString _name, QIcon _icon, SelectionInterface::PrimitiveType &_typeHandle)
 SelectionInterface: This signal is emitted when a selection plugin should handle a new primitive type.
void addCustomSelectionMode (QString _handleName, QString _modeName, QString _description, QIcon _icon, SelectionInterface::PrimitiveType _associatedTypes, QString &_customIdentifier)
 SelectionInterface: This signal is emitted when a custom selection mode is added.
void addSelectionOperations (QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type)
 SelectionInterface: This signal is used to add non-interactive operations for a specific primitive type.
void selectionOperation (QString _operation)
 SelectionInterface: This signal is emitted when a non-interactive operation has been performed.
void showToggleSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard toggle selection is required.
void showLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard lasso selection is required.
void showVolumeLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard volume lasso selection is required.
void showSurfaceLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard surface lasso selection is required.
void showSphereSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard sphere selection is required.
void showClosestBoundarySelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard closest boundary selection is required.
void showFloodFillSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard flood fill selection is required.
void showComponentsSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: This signal is emitted when standard connected components selection is required.
void toggleSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard toggle selection has been performed.
void lassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard lasso selection has been performed.
void volumeLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard volume lasso selection has been performed.
void surfaceLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard surface lasso selection has been performed.
void sphereSelection (QMouseEvent *_event, double _radius, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard sphere selection has been performed.
void closestBoundarySelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard closest boundary selection has been performed.
void floodFillSelection (QMouseEvent *_event, double _maxAngle, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard flood fill selection has been performed.
void componentsSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: This signal is emitted when standard connected components selection has been performed.
void customSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier, bool _deselect)
 SelectionInterface: This signal is emitted when a custom selection operation has been performed.
void getActiveDataTypes (SelectionInterface::TypeList &_types)
 SelectionInterface: This signal is emitted when the active (selected) data types should be fetched.
void getActivePrimitiveType (SelectionInterface::PrimitiveType &_type)
 SelectionInterface: This signal is emitted when the active (selected) primitive type should be fetched.
void targetObjectsOnly (bool &_targetsOnly)
 SelectionInterface: This signal is emitted if the current target restriction state is requested.
void loadSelection (const INIFile &_file)
 SelectionInterface: This signal is emitted when a selection should be loaded from a file.
void saveSelection (INIFile &_file)
 SelectionInterface: This signal is emitted when a selection should be written into a file.
void registerKeyShortcut (int _key, Qt::KeyboardModifiers _modifiers)
 SelectionInterface: This signal is emitted when a type selection plugin wants to listen to a key event.
void keyShortcutEvent (int _key, Qt::KeyboardModifiers _modifiers=Qt::NoModifier)
 SelectionInterface: This signal is emitted when a key shortcut has been pressed.
void iniLoad (INIFile &, int)
 If an ini File is opened, this signal is send to Plugins capable of handling ini files.
void iniSave (INIFile &_ini, int _id)
 This signal is used to tell the plugins to save the data of _id to the given file.
void iniSaveOptions (INIFile &_ini)
 This signal is used to tell the plugins to save their current status.
void iniLoadOptions (INIFile &_ini)
 This signal is used to tell the plugins to load their new status.
void iniLoadOptionsLast (INIFile &_ini)
 This signal is used to tell the plugins to load their new status after objects are loaded.
void saveOnExit (INIFile &_ini)
 This signal is emitted before the core deletes its data and exits.
void createBackup (int _objectid, QString _name, UpdateType _type=UPDATE_ALL)
 Tell backup-plugin to create a backup.
void createBackup (IdList _objectids, QString _name, std::vector< UpdateType > _types)
void undo (int _objectid)
 Tell backup-plugin to undo/redo.
void redo (int _objectid)
void undo ()
void redo ()
void aboutToRestore (int _objectId, UpdateType _type)
 Backup Plugin tells other Plugins that a restore will happen.
void restore (int _objectId, UpdateType _type)
 Backup Plugin tells other Plugins that they should restore their own data.
void restored (int _objectId, UpdateType _type)
 Backup Plugin tells other Plugins that a restore has happened.
void openedFile (int _id)
 Tell the plugins that a file has been opened ( -> Database).
void emptyObjectAdded (int _id)
 Tell the plugins that an empty object has been added.
void pluginsInitialized ()
 Called after all plugins are loaded.
void visibilityChanged (int _id)
 Tell plugins that the visibility of an object has changed.
void objectPropertiesChanged (int _id)
 Tell plugins that object properties such as object names have been changed.
void objectDeleted (int)
 Called after an object has been deleted.

Public Member Functions

 Core ()
 constructor
void init ()
 Second initialization stage.
 ~Core ()
 destructor
bool add_sync_host (const QString &_name)
 Synchronise two viewers.

Private Slots

void slotMouseEventIdentify (QMouseEvent *_event)
 Handle Mouse events when in Identifier mode.
void slotMouseEventLight (QMouseEvent *_event)
 Handle Mouse events when in Light mode.
Slots called by the plugins

void slotObjectUpdated (int _identifier, const UpdateType _type=UPDATE_ALL)
void slotVisibilityChanged (int _id)
 Called when a plugin changes the visibility of an object.
void slotObjectPropertiesChanged (int _id)
 Called by plugins if object properties like names have changed.
void slotObjectSelectionChanged (int _id)
 Called by Plugins if they changed the active object.
void slotAddPickMode (const std::string _mode)
 Add a new picking mode to the examiner_widget_.
void slotAddHiddenPickMode (const std::string _mode)
 Add a new and invisible picking mode to the examiner_widget_.
void slotAddTexture (QString _textureName, QString _filename, uint _dimension, int _id)
 Called by a plugin if it creates a texture.
void slotAddTexture (QString _textureName, QString _filename, uint _dimension)
 Called by a plugin if it creates a texture.
void slotMultiTextureAdded (QString _textureGroup, QString _name, QString _filename, int _id, int &_textureId)
 Called by a plugin if it creates a multitexture.
void slotUpdateTexture (QString _name, int _identifier)
 Tell the plugins to update the given texture.
void slotUpdateAllTextures ()
 Update all textures in the plugins.
void slotTextureUpdated (QString _textureName, int _identifier)
 A Texture has been updated.
void slotSetTextureMode (QString _textureName, QString _mode, int _id)
 A texture mode should be changed.
void slotSetTextureMode (QString _textureName, QString _mode)
 A texture mode should be changed.
void slotSwitchTexture (QString _textureName, int _id)
 Tells Plugins to switch to the given Texture.
void slotSwitchTexture (QString _textureName)
 Tells Plugins to switch to the given Texture.
void slotTextureChangeImage (QString _textureName, QImage &_image)
 Called by plugins if texture image should be changed.
void slotTextureChangeImage (QString _textureName, QImage &_image, int _id)
 Called by plugins if texture image should be changed.
void slotTextureGetImage (QString _textureName, QImage &_image)
 Called by plugins if texture image should be fetched.
void slotTextureGetImage (QString _textureName, QImage &_image, int _id)
 Called by plugins if texture image should be fetched.
void slotTextureIndex (QString _textureName, int _id, int &_index)
 Called by plugins if texture index should be fetched.
void slotTextureIndexPropertyName (int _id, QString &_propertyName)
 Called by plugins if texture index property name should be fetched.
void slotTextureName (int _id, int _textureIndex, QString &_textureName)
 Called by plugins if texture name should be fetched.
void slotTextureFilename (int _id, QString _textureName, QString &_textureFilename)
 Called by plugins if texture name should be fetched.
void slotGetCurrentTexture (int _id, QString &_textureName)
 Called by plugins if current texture should be retrieved.
void slotGetSubTextures (int _id, QString _multiTextureName, QStringList &_subTextures)
 Called by plugins if a multi-texture's sub textures should be fetched.
void slotLoad (QString _filename, DataType _type, int &_id)
 A plugin wants to load a given file.
void slotLoad (QString _filename, int _pluginID)
 the load widget wants to load a given file
void slotFileOpened (int _id)
 Called when a file has been opened.
void slotEmptyObjectAdded (int _id)
 Called when an empty object has been Added.
void slotAddSelectionEnvironment (QString _modeName, QString _description, QIcon _icon, QString &_handleName)
 SelectionInterface: Called when a new selection type button should be added to the toolbar.
void slotRegisterType (QString _handleName, DataType _type)
 SelectionInterface: Called when a data type is added for a specific selection type.
void slotAddPrimitiveType (QString _handleName, QString _name, QIcon _icon, SelectionInterface::PrimitiveType &_typeHandle)
 SelectionInterface: Called when a new, non-standard primitive type should be handled.
void slotAddCustomSelectionMode (QString _handleName, QString _modeName, QString _description, QIcon _icon, SelectionInterface::PrimitiveType _associatedTypes, QString &_customIdentifier)
 SelectionInterface: Add new selection mode for specified type.
void slotAddSelectionOperations (QString _handleName, QStringList _operationsList, QString _category, SelectionInterface::PrimitiveType _type)
 SelectionInterface: Called in order to add non-interactive operations for a specific primitive type.
void slotSelectionOperation (QString _operation)
 SelectionInterface: Called when a non-interactive operation has been performed.
void slotShowToggleSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide toggle selection operation for specific selection mode.
void slotShowLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide lasso selection operation for specific selection mode.
void slotShowVolumeLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide volume lasso selection operation for specific selection mode.
void slotShowSurfaceLassoSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide surface lasso selection operation for specific selection mode.
void slotShowSphereSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide sphere selection operation for specific selection mode.
void slotShowClosestBoundarySelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide closest boundary selection operation for specific selection mode.
void slotShowFloodFillSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide flood fill selection operation for specific selection mode.
void slotShowComponentsSelectionMode (QString _handleName, bool _show, SelectionInterface::PrimitiveType _associatedTypes)
 SelectionInterface: Provide connected components selection operation for specific selection mode.
void slotToggleSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when toggle selection operation has been performed.
void slotLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when lasso selection operation has been performed.
void slotVolumeLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when volume lasso selection operation has been performed.
void slotSurfaceLassoSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when surface lasso selection operation has been performed.
void slotSphereSelection (QMouseEvent *_event, double _radius, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when sphere selection operation has been performed.
void slotClosestBoundarySelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when closest boundary selection operation has been performed.
void slotFloodFillSelection (QMouseEvent *_event, double _maxAngle, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when flood fill selection operation has been performed.
void slotComponentsSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, bool _deselect)
 SelectionInterface: Called when connected components selection operation has been performed.
void slotCustomSelection (QMouseEvent *_event, SelectionInterface::PrimitiveType _currentType, QString _customIdentifier, bool _deselect)
 SelectionInterface: Called when custom selection operation has been performed.
void slotGetActiveDataTypes (SelectionInterface::TypeList &_types)
 SelectionInterface: Called when active (selected) data types should be fetched.
void slotGetActivePrimitiveType (SelectionInterface::PrimitiveType &_type)
 SelectionInterface: Called when active primitive type should be fetched.
void slotTargetObjectsOnly (bool &_targetsOnly)
 SelectionInterface: Called when target restriction state should be fetched.
void slotLoadSelection (const INIFile &_file)
 SelectionInterface: Called when a selection should be loaded from a file.
void slotSaveSelection (INIFile &_file)
 SelectionInterface: Called when a selection should be stored into a file.
void slotRegisterKeyShortcut (int _key, Qt::KeyboardModifiers _modifiers)
 SelectionInterface: Called when a key shortcut is to be registered.
void slotKeyShortcutEvent (int _key, Qt::KeyboardModifiers _modifiers)
 SelectionInterface: Called when a key event occurred.
void slotGetAllFilters (QStringList &_list)
 Called when a plugin requests a list of file-filters.
void slotDeleteObject (int _id)
 Called when a plugin wants to delete an object.
void slotDeleteAllObjects ()
 Called when a plugin wants to delete all objects.
void slotCrossPluginConnect (QString _pluginName1, const char *_signal, QString _pluginName2, const char *_slot)
 Called to create inter plugin connections.
RPC ( Remote procedure Call) support

void slotPluginExists (QString _pluginName, bool &_exists)
void slotFunctionExists (QString _pluginName, QString _functionName, bool &_exists)
void slotCall (QString _pluginName, QString _functionName, bool &_success)
void slotCall (QString _expression, bool &_success)
void slotGetValue (QString _expression, QVariant &_result)
Object Manager

void newObject (int _objectId)
 This slot is called by the object manager when a new object is created.
void deletedObject (int _objectId)
 This slot is called by the object manager when an object is deleted.

Private Member Functions

bool checkOpenGLCapabilities ()
 OpenGL capability check.
bool checkLibraryVersions ()
 Checks for library inconsistencies.
Signal and Slot processing for Plugins

bool checkSlot (QObject *_plugin, const char *_slotSignature)
 Check if a plugin has a slot.
bool checkSignal (QObject *_plugin, const char *_signalSignature)
 Check if a plugin has a signal.

Private Attributes

int nextBackupId_
 Id for the next backup.
int nextBackupGroupId_
 Id for the next backup group.
std::vector< PluginLogger * > loggers_
 Logger interfaces between plugins and core logger.
std::vector< dataTypessupportedDataTypes_
 Type-Plugins.
BaseObjectobjectRoot_
 Pointer to the data rootNode;.
CoreWidgetcoreWidget_
 The main applications widget ( only created in gui mode ).
QSplashScreen * splash_
 SplashScreen, only used in gui mode.
QString splashMessage_
 Last Splash message;.
QVector< ViewMode * > viewModes_
 List of available draw modes.
QTimer * redrawTimer_
 If enabled, this timer will block screen refresh if done more then 30 times per second.
Scenegraph

SeparatorNoderoot_node_scenegraph_
 Scenegraphs root node.
SeparatorNoderoot_node_scenegraph_global_
 Seperator node for global nodes.
SeparatorNodecore_nodes_
 Separator Node holding all core scenegraph nodes.
SeparatorNodedataSeparatorNode_
 Toplevel Nodes for data objects.
SeparatorNodedataRootNode_
 Root Node for data objects.
ACG::SceneGraph::MaterialNodecoordsysMaterialNode_
 Node for coordsys Material.
ACG::SceneGraph::CoordsysNodecoordsysNode_
 Node for the coordinate system.

Basic functions



std::vector< std::pair
< std::string, bool > > 
commandLineFileNames_
 Vector storing filenames from commandline to be opened after application startup (objects).
std::vector< std::string > commandLineScriptNames_
 Vector storing filenames from commandline to be opened after application startup (script files).
void commandLineOpen (const char *_filename, bool _asPolyMesh)
 Load an object from the commandline on application start.
void commandLineScript (const char *_filename)
 Load a script from the commandline on application start.
int addEmptyObject (DataType _type)
int loadObject (DataType _type, QString _filename)
 Load object of the given Type with given filename.
void resetScenegraph (bool _resetTrackBall)
void slotExecuteAfterStartup ()
 Executed after loading core completly to load files from commandline.
int loadObject (QString _filename)
 Load a new Object ( this may also be an ini or ofs file ).

Video Stream creation



QTimer videoTimer_
QTime lastVideoTime_
int captureType_
bool capture_
int lastWidth_
int lastHeight_
void viewUpdated ()
 Slot called everytime the view is updated.
void captureVideo ()
 Function called for every frame when capturing video.
void startVideoCapture (QString _baseName, int _fps, bool _captureViewers)
 Start video capturing.
void stopVideoCapture ()
 Stop video capturing.

Logging



QTextStream * logStream_
 stream for logging to file
QFile * logFile_
 logfile
void scriptLogFunction (QString _output)
void slotLog (Logtype _type, QString _message)
 Console logger.
void slotLogToFile (Logtype _type, QString _message)
 log to file
void log (Logtype _type, QString _message)
 Logg with OUT,WARN or ERR as type.
void log (QString _message)
 Default logging as OUT.
void scriptLog (QString _message)
 Logging signal for ScriptEngine.
void externalLog (Logtype _type, QString _message)
 This signal is emitted to send log data to a plugin.

Plugin Management



std::vector< PluginInfoplugins
 List of all loaded plugins.
int toolboxindex_
 Index of Plugins toolbox widget.
void slotShowPlugins ()
 Show Plugins Dialog.
void unloadPlugin (QString name)
 Function for unloading Plugins.
void slotLoadPlugin ()
 Load Plugins from menu.
void loadPlugin (QString filename, bool silent, QString &_licenseErrors, QObject *_plugin=0)
 Function for loading Plugins.
void loadPlugins ()
 Load all plugins from default plugin directory and from INI-File.

Scripting support



QScriptEngine scriptEngine_
 Core scripting engine.
std::vector< ScriptingWrapper * > scriptingWrappers_
 Wrappers for plugin scripting.
QStringList scriptingFunctions_
 List of all registered scripting functions.
prototypeVec3d vec3dPrototype_
 Prototype for the Vector type.
prototypeDataType DataTypePrototype_
 Prototype for the DataType.
prototypeMatrix4x4 matrix4x4Prototype_
 Prototype for the Matrix type.
QList< SlotInfocoreSlots_
void slotScriptInfo (QString _pluginName, QString _functionName)
void slotExecuteScript (QString _script)
void slotExecuteFileScript (QString _filename)
void slotGetScriptingEngine (QScriptEngine *&_engine)
void slotGetAllAvailableFunctions (QStringList &_functions)
void slotSetSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
 set a description for one of the plugin's public slots
void slotGetDescription (QString _function, QString &_fnDescription, QStringList &_parameters, QStringList &_descriptions)
 get available descriptions for a given public slot
void scriptInfo (QString _pluginName, QString _functionName)
void executeScript (QString _script)
void executeFileScript (QString _filename)
void setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
void createWidget (QString _objectName, QString _uiFilename)
 Create an script object from a ui file.
void setViewMode (QString _viewMode)
 Set the active ViewMode.
void setViewModeIcon (QString _mode, QString _iconName)
 Set the icon of a viewMode.
void moveToolBoxToTop (QString _name)
 Move selected toolbox to top of side area.
void moveToolBoxToBottom (QString _name)
 Move selected toolbox to bottom of side area.
void setDescriptions ()
 set the descriptions for scriptable slots of the core

Scenegraph redraw handling



QTimer * scenegraphCheckTimer_
 Timer that starts scenegraph check.
QTime * redrawTime_
 Holds the time since last redraw.
void checkScenegraphDirty ()
 Called to check if the scenegraph needs to be redrawn.

Process Interface and Controls



QList< JobInfo * > currentJobs
ProcessManagerWidgetprocessManager_
void slotStartJob (QString _jobId, QString _description, int _min, int _max, bool _blocking)
 A job has been started by a plugin.
void slotSetJobState (QString _jobId, int _value)
 A job state has been updated by a plugin.
void slotSetJobName (QString _jobId, QString _name)
 A job's widget caption has been updated by a plugin.
void slotSetJobDescription (QString _jobId, QString _text)
 A job's widget's status text has been updated by a plugin.
void slotCancelJob (QString _jobId)
 A job state has been canceled by a plugin.
void slotFinishJob (QString _jobId)
 A job state has been finished by a plugin.
void slotJobCancelRequested (QString _jobId)
 Called by dialogs if cancel button is pressed.
void jobCanceled (QString _jobId)
bool getJob (QString _jobId, int &_index)
 Find a job in the jobslist.

Basic slots



void slotMouseEvent (QMouseEvent *_event)
 Gets called by examiner widget when mouse is moved in picking mode.
void slotWheelEvent (QWheelEvent *_event, const std::string &_mode)
 Gets called by examiner widget when Wheel is moved in picking mode.
void slotAddEmptyObjectMenu ()
 Open the add Empty dialog.
void slotAddEmptyObject (DataType _type, int &_id)
 Slot adding empty object of a given type.
void slotCopyObject (int _oldId, int &_newId)
 Slot copying an object.
void slotExit ()
 Exit Application.
void slotRecentOpen (QAction *_action)
 Open Recent file.
void slotGenerateBackup (int _id, QString _name, UpdateType _type)
 Slot for generating type specific backups.
void addToolbox (QString _name, QWidget *_widget)
 Add a Toolbox from a plugin or from scripting.
void addToolbox (QString _name, QWidget *_widget, QIcon *_icon)
 Add a Toolbox from a plugin or from scripting (with icon).

IniFile and Options Handling



void saveOptions ()
 Save the current options to the standard ini file.
void applyOptions ()
 after ini-files have been loaded and core is up or if options have been changed -> apply Options
void openIniFile (QString _filename, bool _coreSettings, bool _perPluginSettings, bool _loadObjects)
 Load information from an ini file.
void setupOptions ()
 Get all ini files and set basic paths and options.
void readGUIOptions (INIFile &_ini)
 Read Options that needs the GUI to be set up completely.
void readApplicationOptions (INIFile &_ini)
 Get and set Application options from ini file.
void writeApplicationOptions (INIFile &_ini)
 Write Application options to ini file.
void restoreKeyBindings ()
 Restore key assignments from configs files.
void writeIniFile (QString _filename, bool _relativePaths, bool _targetOnly, bool _saveSystemSettings, bool _savePluginSettings, bool _saveObjectInfo, std::map< int, QString > &_fileMapping)
 Write current status to ini file (Application and File Options).
void writeObjFile (QString _filename, bool _relativePaths, bool _targetOnly, std::map< int, QString > &_fileMapping)
 Write current status to obj file (Application and File Options).
void writeOnExit ()
 Called if app is closed and writes all information to ini file.

Detailed Description

Core Widget of the Application

Definition at line 129 of file Core.hh.


Constructor & Destructor Documentation

Core::Core (  ) 

constructor

Constuctor for the Core Widget ( This is stage 1 , call init for stage 2).

Initialization is working the following way:

  • Setup basic paths
  • Get Options from Option files ( While skipping the OpenFiles Sections as Core is not running )
  • Jump back ( Stage two is done by calling init from main ) so CALL init!!
  • This Two stage system allows using commandline options which override Option Files

Definition at line 120 of file Core.cc.

References coordsysMaterialNode_, coordsysNode_, core_nodes_, ViewMode::custom, dataRootNode_, dataSeparatorNode_, ViewMode::icon, logFile_, logStream_, ViewMode::name, ACG::SceneGraph::BaseNode::NodeFirst, root_node_scenegraph_, root_node_scenegraph_global_, ACG::SceneGraph::BaseNode::SecondPass, setDescriptions(), ACG::SceneGraph::ACG::SceneGraph::BaseNode::setTraverseMode(), setupOptions(), PluginFunctions::setViewerProperties(), Viewer::ViewerProperties::snapshotBaseFileName(), viewModes_, and ViewMode::visibleToolboxes.


Member Function Documentation

int Core::addEmptyObject ( DataType  _type  ) 

Add an empty Object of the given Type

Returns:
id of the new object or -1 if unsupported

Definition at line 317 of file openFunctions.cc.

References log(), LOGERR, and supportedDataTypes_.

Referenced by loadPlugin(), and slotAddEmptyObject().

void Core::addViewModeContextMenus ( QString  _modeName,
QString  _contextMenuList 
) [slot]

Scripting function to set context menus in a view mode.

Parameters:
_modeName Name of the View Mode
_toolboxList ; seperated list of context menus in the view mode

Definition at line 195 of file scripting.cc.

References coreWidget_, and CoreWidget::slotAddViewModeContextMenus().

void Core::addViewModeIcon ( QString  _modeName,
QString  _iconName 
) [slot]

Scripting function to set an icon for a view mode.

Parameters:
_modeName Name of the View Mode
_toolboxList Name of the Icon File. Will be taken from OpenFlippers Icon directory

Definition at line 201 of file scripting.cc.

References coreWidget_, and CoreWidget::slotSetViewModeIcon().

void Core::addViewModeToolbars ( QString  _modeName,
QString  _toolbarList 
) [slot]

Scripting function to set toolbars in a view mode.

Parameters:
_modeName Name of the View Mode
_toolboxList ; seperated list of toolbars in the view mode

Definition at line 187 of file scripting.cc.

References coreWidget_, and CoreWidget::slotAddViewModeToolbars().

void Core::addViewModeToolboxes ( QString  _modeName,
QString  _toolboxList 
) [slot]

Scripting function to set toolboxes in a view mode.

Parameters:
_modeName Name of the View Mode
_toolboxList ; seperated list of toolboxes in the view mode

Definition at line 179 of file scripting.cc.

References coreWidget_, and CoreWidget::slotAddViewModeToolboxes().

bool Core::checkLibraryVersions (  )  [private]

Checks for library inconsistencies.

Checks if the used libraries are consistent

Definition at line 1557 of file Core.cc.

Referenced by init().

bool Core::checkOpenGLCapabilities (  )  [private]

OpenGL capability check.

Checks if the OpenGL Capabilities of the graphics card are sufficient and prints an error message if not.

Definition at line 1618 of file Core.cc.

Referenced by init().

void Core::checkScenegraphDirty (  )  [private, slot]

Called to check if the scenegraph needs to be redrawn.

Check if scenegraph is dirty and initiate redraw

Definition at line 863 of file Core.cc.

References root_node_scenegraph_, ACG::SceneGraph::traverse(), and updateView().

Referenced by init().

void Core::commandLineOpen ( const char *  _filename,
bool  _asPolyMesh 
)

Load an object from the commandline on application start.

This function is called before the event queue is executed. The filename and parameters are stored. After the event queue is started, all files in this list will be opened. This is necessary as the event queue has to run to schedule the events emitted during open operations.

Parameters:
_filename filename of the file to be opened. If it does not contain a full path, the current path will be prepended.
_asPolyMesh Load as a polymesh ( yes/no)

Definition at line 97 of file openFunctions.cc.

References commandLineFileNames_.

void Core::commandLineScript ( const char *  _filename  ) 

Load a script from the commandline on application start.

This function is called before the event queue is executed. The filename is stored. After the event queue is started, all files in this list will be opened. This is necessary as the event queue has to run to schedule the events emitted during open operations.

Parameters:
_filename filename of the script to be opened. If it does not contain a full path, the current path will be prepended.

Definition at line 112 of file openFunctions.cc.

References commandLineScriptNames_.

void Core::createWidget ( QString  _objectName,
QString  _uiFilename 
) [slot]

Create an script object from a ui file.

This function will load an ui file, set up a qwidget from that and makes it available under _objectName for scripting.

Parameters:
_objectName The name in scripting environment used for the new object
_uiFilename ui file to load

Definition at line 87 of file scripting.cc.

References log(), LOGERR, and scriptEngine_.

void Core::deletedObject ( int  _objectId  )  [private, slot]

This slot is called by the object manager when an object is deleted.

This slot is called by the object manager when a object is deleted.

Definition at line 367 of file PluginCommunication.cc.

Referenced by init().

void Core::init (  ) 

Second initialization stage.

This Stage does the following :

  • Create the Core GUI Elements (Examiner, Toolbox,...)
  • Create the MenuBar
  • load the Plugins
  • connect the Mouse slots
  • Load all ini files (This includes the Global Option files)

Skip all signals for function calls

Definition at line 203 of file Core.cc.

References applyOptions(), checkLibraryVersions(), checkOpenGLCapabilities(), checkScenegraphDirty(), checkSignal(), clearAll(), OpenMesh::mostream::connect(), coreWidget_, dataSeparatorNode_, DataTypePrototype_, deletedObject(), OpenMesh::mostream::disconnect(), enableOpenMeshErrorLog(), CoreWidget::examiner_widgets_, loadObject(), loadPlugins(), loadSettings(), log(), LOGERR, loggers_, LOGINFO, LOGOUT, LOGWARN, CoreWidget::logWidget_, matrix4x4Prototype_, myPrintFunction(), newObject(), objectRoot_, openIniFile(), plugins, redrawTime_, redrawTimer_, resizeApplication(), resizeViewers(), restoreKeyBindings(), SideArea::restoreState(), QtSlideWindow::restoreState(), root_node_scenegraph_, root_node_scenegraph_global_, saveAllObjects(), saveAllObjectsTo(), saveOptions(), saveSettings(), scenegraphCheckTimer_, scriptEngine_, scriptingFunctions_, scriptLog(), PluginFunctions::setDataRoot(), PluginFunctions::setDataSeparatorNodes(), PluginFunctions::setSceneGraphRootNode(), PluginFunctions::setSceneGraphRootNodeGlobal(), RPC::setScriptEngine(), CoreWidget::setViewMode(), CoreWidget::slidingLogger_, slotAddEmptyObjectMenu(), slotCall(), slotExecuteAfterStartup(), slotExit(), slotLog(), slotLogToFile(), slotMouseEvent(), slotMouseEventIdentify(), slotMouseEventLight(), slotRecentOpen(), CoreWidget::slotRegisterSlotKeyBindings(), slotShowPlugins(), slotWheelEvent(), splash_, CoreWidget::splitter_, startVideoCapture(), stopVideoCapture(), CoreWidget::toolBox_, CoreWidget::toolSplitter_, CoreWidget::updateRecent(), updateView(), OpenFlipperQSettings::value(), vec3dPrototype_, viewModes_, and viewUpdated().

void Core::loadObject (  )  [slot]

Open Load Widget.

Open Load-Object Widget.

Definition at line 657 of file openFunctions.cc.

References log(), LOGERR, saveObject(), LoadWidget::showLoad(), and slotLoad().

Referenced by init(), loadObject(), loadSettings(), openIniFile(), slotExecuteAfterStartup(), slotLoad(), and slotRecentOpen().

int Core::loadObject ( DataType  _type,
QString  _filename 
)

Load object of the given Type with given filename.

Function for loading a given file.

This function should not be used anymore.
The extension is now used to check for the plugin handling the given types.

Returns:
id of the new object or -1 if unsupported

Todo:
this function has to be checked. test for the plugin which can handle the given file and then use it.

Definition at line 256 of file openFunctions.cc.

References CoreWidget::addRecent(), checkSlot(), coreWidget_, DATA_UNKNOWN, BaseObject::dataType(), PluginFunctions::getObject(), loadObject(), log(), LOGERR, ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

int Core::loadObject ( QString  _filename  )  [slot]

Load a new Object ( this may also be an ini or ofs file ).

This function tries to get the type of data to be loaded from the filename and then load the file.

Parameters:
_filename Filename of the data
Returns:
id of object otherwise -1

Todo:
Check if this function is ok. It should check all plugins for the given files and do not depend on Triangle meshes only! Rewrite function to get the plugin only and then open the file. So iterate over all plugins and find the matching ones. open it with this plugin.

Definition at line 183 of file openFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, DATA_UNKNOWN, BaseObject::dataType(), PluginFunctions::getObject(), log(), LOGERR, LOGINFO, LOGWARN, openIniFile(), ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

void Core::loadPlugin ( QString  filename,
bool  silent,
QString &  _licenseErrors,
QObject *  _plugin = 0 
) [private]

Function for loading Plugins.

Load a Plugin with given filename.

Parameters:
filename complete path + filename of the plugin
silent if 'true': user isn't asked what to do if a plugin is already loaded
_licenseErrors String will be epty when no license issues occured, otherwise it contains the required information for obtaining a license
_plugin You can provide a preloaded plugin here. If this is 0 the filename will be used to load the plugin.

Skip all signals for function calls

Definition at line 685 of file PluginLoader.cc.

References aboutToRestore(), addCustomSelectionMode(), addEmptyObject(), addMultiTexture(), addPrimitiveType(), addSelectionEnvironment(), addSelectionOperations(), addTexture(), addToolbox(), allCleared(), applyOptions(), checkSignal(), checkSlot(), closestBoundarySelection(), componentsSelection(), coreWidget_, createBackup(), customSelection(), PluginInfo::description, BaseInterface::description(), emptyObjectAdded(), externalLog(), floodFillSelection(), getActiveDataTypes(), getActivePrimitiveType(), getCurrentTexture(), FileInterface::getLoadFilters(), FileInterface::getSaveFilters(), getSubTextures(), iniLoad(), iniLoadOptions(), iniLoadOptionsLast(), iniSave(), iniSaveOptions(), OptionsInterface::initializeOptionsWidget(), keyShortcutEvent(), lassoSelection(), loadSelection(), log(), LOGERR, loggers_, LOGINFO, LOGOUT, LOGWARN, PluginInfo::name, BaseInterface::name(), objectDeleted(), objectPropertiesChanged(), objectSelectionChanged(), openedFile(), PluginInfo::optionsWidget, PluginInfo::path, PluginInfo::plugin, PluginMouseEvent(), PluginMouseEventLight(), plugins, pluginsInitialized(), pluginViewChanged(), PluginWheelEvent(), registerKeyShortcut(), registerType(), restore(), restored(), PluginInfo::rpcFunctions, PluginInfo::rpcName, saveObject(), saveOnExit(), saveSelection(), scriptEngine_, scriptingFunctions_, scriptingWrappers_, selectionOperation(), setTextureMode(), setViewMode(), showClosestBoundarySelectionMode(), showComponentsSelectionMode(), showFloodFillSelectionMode(), showLassoSelectionMode(), showSphereSelectionMode(), showSurfaceLassoSelectionMode(), showToggleSelectionMode(), showVolumeLassoSelectionMode(), signalObjectUpdated(), slotAddCustomSelectionMode(), slotAddEmptyObject(), slotAddHiddenPickMode(), slotAddPickMode(), slotAddPrimitiveType(), slotAddSelectionEnvironment(), slotAddSelectionOperations(), slotAddTexture(), slotCall(), slotCancelJob(), slotClosestBoundarySelection(), slotComponentsSelection(), slotCopyObject(), slotCrossPluginConnect(), slotCustomSelection(), slotDeleteAllObjects(), slotDeleteObject(), slotEmptyObjectAdded(), slotExecuteFileScript(), slotExecuteScript(), slotFileOpened(), slotFinishJob(), slotFloodFillSelection(), slotGenerateBackup(), slotGetActiveDataTypes(), slotGetActivePrimitiveType(), slotGetCurrentTexture(), slotGetDescription(), slotGetSubTextures(), slotGetValue(), slotKeyShortcutEvent(), slotLassoSelection(), slotLoad(), slotLoadSelection(), slotLog(), slotLogToFile(), slotMouseEvent(), slotMouseEventLight(), slotMultiTextureAdded(), slotObjectPropertiesChanged(), slotObjectSelectionChanged(), slotObjectUpdated(), slotRegisterKeyShortcut(), slotRegisterType(), slotSaveSelection(), slotSelectionOperation(), slotSetJobDescription(), slotSetJobName(), slotSetJobState(), slotSetSlotDescription(), slotSetTextureMode(), slotShowClosestBoundarySelectionMode(), slotShowComponentsSelectionMode(), slotShowFloodFillSelectionMode(), slotShowLassoSelectionMode(), slotShowSphereSelectionMode(), slotShowSurfaceLassoSelectionMode(), slotShowToggleSelectionMode(), slotShowVolumeLassoSelectionMode(), slotSphereSelection(), slotStartJob(), slotSurfaceLassoSelection(), slotSwitchTexture(), slotTargetObjectsOnly(), slotTextureChangeImage(), slotTextureFilename(), slotTextureGetImage(), slotTextureIndex(), slotTextureIndexPropertyName(), slotTextureName(), slotTextureUpdated(), slotToggleSelection(), slotUpdateAllTextures(), slotUpdateTexture(), slotVisibilityChanged(), slotVolumeLassoSelection(), sphereSelection(), splash_, splashMessage_, InformationInterface::supportedDataTypes(), supportedDataTypes_, TypeInterface::supportedType(), FileInterface::supportedType(), surfaceLassoSelection(), switchTexture(), targetObjectsOnly(), textureChangeImage(), textureFilename(), textureGetImage(), textureIndex(), textureIndexPropertyName(), textureName(), toggleSelection(), undo(), unloadPlugin(), updateAllTextures(), updatedTextures(), updateTexture(), updateView(), OpenFlipperQSettings::value(), BaseInterface::version(), PluginInfo::version, visibilityChanged(), and volumeLassoSelection().

Referenced by loadPlugins(), slotLoadPlugin(), and slotShowPlugins().

void Core::loadPlugins (  )  [private]

Load all plugins from default plugin directory and from INI-File.

Load plugins from dir Plugins. The plugin information gets stored, toolbox and menu entries are created and the required signals and slots are connected.

Definition at line 284 of file PluginLoader.cc.

References loadPlugin(), log(), LOGERR, LOGINFO, LOGOUT, LOGWARN, plugins, pluginsInitialized(), splash_, splashMessage_, OpenFlipperQSettings::value(), and PreloadAggregator::waitForNextLoader().

Referenced by init().

void Core::loadSettings ( QString  _filename  )  [slot]

Load status from file.

Load settings from file.

Definition at line 761 of file openFunctions.cc.

References applyOptions(), loadObject(), openIniFile(), and OpenFlipperQSettings::setValue().

void Core::loadSettings (  )  [slot]

Load status from file.

Load settings from file.

Definition at line 680 of file openFunctions.cc.

References CoreWidget::addRecent(), applyOptions(), coreWidget_, DATA_UNKNOWN, openIniFile(), and OpenFlipperQSettings::setValue().

Referenced by init().

void Core::openIniFile ( QString  _filename,
bool  _coreSettings,
bool  _perPluginSettings,
bool  _loadObjects 
) [slot]

Load information from an ini file.

This function will open an ini file and load the information in it.

Parameters:
_filename Name of the ini file
_coreSettings Load core settings from the file
_perPluginSettings Load per plugin settings from the file
_loadObjects Load objects defined in the ini file

Definition at line 413 of file ParseIni.cc.

References ApplicationStatus::BLOCKED, BaseObject::childExists(), INIFile::connect(), coreWidget_, INIFile::disconnect(), Viewer::ViewerProperties::drawMode(), CoreWidget::examiner_widgets_, INIFile::get_entry(), BaseObject::id(), iniLoad(), iniLoadOptions(), iniLoadOptionsLast(), loadObject(), log(), LOGERR, LOGWARN, objectRoot_, readApplicationOptions(), ApplicationStatus::READY, resetScenegraph(), INIFile::section_exists(), BaseObject::source(), BaseObject::target(), typeId(), typeName(), and PluginFunctions::viewerProperties().

Referenced by init(), loadObject(), and loadSettings().

void Core::readApplicationOptions ( INIFile _ini  )  [private]
void Core::resetScenegraph ( bool  _resetTrackBall  )  [private, slot]

Do a reset of the scenegraph (bounding box update,...)

Parameters:
_resetTrackBall Should the rotation center of the trackball be reset to the scene center?

Definition at line 63 of file openFunctions.cc.

References coreWidget_, CoreWidget::examiner_widgets_, Viewer::ViewerProperties::lockUpdate(), root_node_scenegraph_, CoreWidget::slotUpdateGlobalDrawMenu(), Viewer::ViewerProperties::unLockUpdate(), and PluginFunctions::viewerProperties().

Referenced by openIniFile(), slotEmptyObjectAdded(), slotFileOpened(), slotObjectUpdated(), and slotVisibilityChanged().

void Core::restoreKeyBindings (  )  [private]

Restore key assignments from configs files.

restore key Assignments that were saved in config files

Definition at line 264 of file optionHandling.cc.

References INIFile::connect(), coreWidget_, INIFile::disconnect(), CoreWidget::loadKeyBindings(), log(), and LOGERR.

Referenced by init().

void Core::saveAllObjects (  )  [slot]

Slot for saving objects from Menu.

Save changes for all target objects (slot is called from CoreWidget's File-Menu).

Definition at line 254 of file saveFunctions.cc.

References PluginFunctions::objectsEnd(), saveObject(), and saveObjectTo().

Referenced by init().

void Core::saveAllObjectsTo (  )  [slot]

Slot for saving objects to a new location.

Save all target objects under new name (slot is called from CoreWidget's File-Menu).

Definition at line 280 of file saveFunctions.cc.

References DATA_UNKNOWN, PluginFunctions::objectsEnd(), saveObjectsTo(), and saveObjectTo().

Referenced by init().

void Core::saveObject ( int  _id,
QString  _filename,
int  _pluginID 
) [slot]

Save an object get object with given id, find a plugin to save dataType, save! (existing files will be overwritten)

Definition at line 117 of file saveFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, BaseObject::dataType(), PluginFunctions::getObject(), ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

bool Core::saveObject ( int  _id,
QString  _filename 
) [slot]

Save object with given id

Parameters:
_id id of the object

Save an object get object with given id, find a plugin to save dataType, save! (existing files will be overwritten)

Definition at line 61 of file saveFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, BaseObject::dataType(), dataTypeName(), PluginFunctions::getObject(), log(), LOGERR, ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

Referenced by loadObject(), loadPlugin(), saveAllObjects(), saveObjectTo(), and saveSettings().

void Core::saveObjects ( IdList  _ids,
QString  _filename,
int  _pluginID 
) [slot]

Save multiple objects to one file get object with given id, find a plugin to save dataType, save! (existing files will be overwritten)

Definition at line 153 of file saveFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, PluginFunctions::getObject(), log(), LOGERR, ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

Referenced by saveObjectsTo().

bool Core::saveObjectsTo ( IdList  _ids,
QString  _filename 
) [slot]

Save multiple objects to a new location Show the save-widget to determine a filename, the widget calls slotSave to save the objects

Definition at line 227 of file saveFunctions.cc.

References log(), LOGERR, saveObjects(), and LoadWidget::showSave().

Referenced by saveAllObjectsTo().

bool Core::saveObjectTo ( int  _id,
QString  _filename 
) [slot]

Show dialog for saving an object to a new location

Parameters:
_id id of the object
_filename current filename of the object

Save an object to a new location Show the save-widget to determine a filename, the widget calls slotSave to save the object

Definition at line 199 of file saveFunctions.cc.

References log(), LOGERR, saveObject(), and LoadWidget::showSave().

Referenced by saveAllObjects(), saveAllObjectsTo(), and saveSettings().

void Core::saveSettings (  )  [slot]
void Core::setToolBoxActive ( QString  _toolBoxName,
bool  _active 
) [slot]

Scripting function to set the side of the main window on which the toolbox should be displayed.

Parameters:
_side The desired side (either "left" or "right")

Definition at line 300 of file scripting.cc.

References coreWidget_, SideArea::setElementActive(), and CoreWidget::toolBox_.

void Core::setToolBoxSide ( QString  _side  )  [slot]

Scripting function to set the side of the main window on which the toolbox should be displayed.

Parameters:
_side The desired side (either "left" or "right")

Definition at line 207 of file scripting.cc.

References coreWidget_, log(), LOGERR, and CoreWidget::setToolBoxOrientationOnTheRight().

void Core::slotAddEmptyObject ( DataType  _type,
int &  _id 
) [private, slot]

Slot adding empty object of a given type.

Slot for adding an empty object of given DataType.

Definition at line 345 of file openFunctions.cc.

References addEmptyObject(), log(), LOGINFO, and DataType::name().

Referenced by loadPlugin(), and slotAddEmptyObjectMenu().

void Core::slotAddEmptyObjectMenu (  )  [private, slot]

Open the add Empty dialog.

Opens AddEmpty-Object widget.

This slot shows the addEmpty dialog which is used to add empty objects of supported dataTypes

Definition at line 575 of file openFunctions.cc.

References log(), LOGERR, slotAddEmptyObject(), supportedDataTypes_, typeCount(), and typeName().

Referenced by init().

void Core::slotAddTexture ( QString  _textureName,
QString  _filename,
uint  _dimension 
) [private, slot]

Called by a plugin if it creates a texture.

Called by a plugin if it created a texture. The information is passed to all plugins. If a texture control plugin is available it has to react on the signal.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 167 of file PluginCommunication.cc.

References addTexture(), log(), and LOGINFO.

void Core::slotAddTexture ( QString  _textureName,
QString  _filename,
uint  _dimension,
int  _id 
) [private, slot]

Called by a plugin if it creates a texture.

Called by a plugin if it created a texture. The information is passed to all plugins. If a texture control plugin is available it has to react on the signal.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 149 of file PluginCommunication.cc.

References addTexture(), log(), and LOGINFO.

Referenced by loadPlugin().

void Core::slotCall ( QString  _expression,
bool &  _success 
) [private, slot]

This slot executes the given expression. No checks are performed if the remote function is available.

Parameters:
_expression command to execute
_success successfull execution?

Definition at line 131 of file RPC.cc.

References log(), LOGERR, and scriptEngine_.

void Core::slotCall ( QString  _pluginName,
QString  _functionName,
bool &  _success 
) [private, slot]

This slot executes a function of a plugin. If it does not exist, _success will be false

Parameters:
_pluginName Plugin where the function is implemented
_functionName name of the function ( Standard name, no parameters allowed!)
_success successfull execution?

Definition at line 94 of file RPC.cc.

References log(), LOGERR, plugins, and scriptEngine_.

Referenced by init(), loadPlugin(), and slotGetValue().

void Core::slotCopyObject ( int  _oldId,
int &  _newId 
) [private, slot]

Slot copying an object.

Slot creating a copy of an existing object.

Definition at line 362 of file openFunctions.cc.

References BaseObject::childExists(), BaseObject::id(), log(), LOGERR, objectRoot_, BaseObject::parent(), BaseObject::setParent(), slotEmptyObjectAdded(), and slotObjectUpdated().

Referenced by loadPlugin().

void Core::slotEmptyObjectAdded ( int  _id  )  [private, slot]

Called when an empty object has been Added.

Slot gets called after a file-plugin has opened an object.

Todo:
: set a default path for new objects

Definition at line 538 of file openFunctions.cc.

References emptyObjectAdded(), PluginFunctions::getObject(), log(), LOGINFO, resetScenegraph(), signalObjectUpdated(), and UPDATE_ALL.

Referenced by loadPlugin(), and slotCopyObject().

void Core::slotExecuteAfterStartup (  )  [private, slot]

Executed after loading core completly to load files from commandline.

This slot is automatically called after application startup. All files from the commandline will be loaded by this slot. This is required as the core and the event queue need to be running to emit the required signals to the plugins.

Definition at line 127 of file openFunctions.cc.

References commandLineFileNames_, commandLineScriptNames_, exitApplication(), loadObject(), log(), and LOGERR.

Referenced by init().

void Core::slotExecuteFileScript ( QString  _filename  )  [private, slot]

Core slot, executes the given file as a script via scripting plugin

Parameters:
_filename Filename of the script

Definition at line 71 of file scripting.cc.

Referenced by loadPlugin().

void Core::slotExecuteScript ( QString  _script  )  [private, slot]

Core slot, executes the given script text via scripting plugin

Parameters:
_script Script as QString

Definition at line 67 of file scripting.cc.

Referenced by loadPlugin().

void Core::slotFileOpened ( int  _id  )  [private, slot]

Called when a file has been opened.

Slot gets called after a file-plugin has opened an object.

Definition at line 476 of file openFunctions.cc.

References coreWidget_, createBackup(), CoreWidget::examiner_widgets_, PluginFunctions::getObject(), BaseObject::getObjectinfo(), log(), LOGINFO, PluginFunctions::objectCount(), openedFile(), resetScenegraph(), signalObjectUpdated(), and UPDATE_ALL.

Referenced by loadPlugin().

void Core::slotGetAllFilters ( QStringList &  _list  )  [private, slot]

Called when a plugin requests a list of file-filters.

This function collects all available load filters from the file Plugins. It is normally called via the Load/Save interface ( LoadSaveInterface ).

Parameters:
_list Returns a list of all available file load filters

Todo:
check why the supported Type is used here!

Definition at line 86 of file openFunctions.cc.

void Core::slotGetCurrentTexture ( int  _id,
QString &  _textureName 
) [private, slot]

Called by plugins if current texture should be retrieved.

Called by plugins if current texture name should be returned

Definition at line 336 of file PluginCommunication.cc.

References getCurrentTexture().

Referenced by loadPlugin().

void Core::slotGetDescription ( QString  _function,
QString &  _fnDescription,
QStringList &  _parameters,
QStringList &  _descriptions 
) [private, slot]

get available descriptions for a given public slot

get available Descriptions for a scriptable slot

Definition at line 1181 of file Core.cc.

References log(), LOGERR, plugins, and PluginInfo::slotInfos.

Referenced by loadPlugin().

void Core::slotGetSubTextures ( int  _id,
QString  _multiTextureName,
QStringList &  _subTextures 
) [private, slot]

Called by plugins if a multi-texture's sub textures should be fetched.

Called by plugins if texture image should be fetched

Definition at line 342 of file PluginCommunication.cc.

References getSubTextures().

Referenced by loadPlugin().

void Core::slotGetValue ( QString  _expression,
QVariant &  _result 
) [private, slot]

This slot executes the given expression and returns the result No checks are performed if the remote function is available. if an error occurs the result contains an invalid QVariant

ex. getValue("databaseplugin.tableExists(\"meshes")", result) ) result.toBool() == true

Parameters:
_expression command to execute
_result The return value of the command

Definition at line 146 of file RPC.cc.

References scriptEngine_, and slotCall().

Referenced by loadPlugin().

void Core::slotLoad ( QString  _filename,
int  _pluginID 
) [private, slot]

the load widget wants to load a given file

Function for loading a given file.

Definition at line 402 of file openFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, DATA_GROUP, DATA_UNKNOWN, PluginFunctions::getObject(), log(), LOGERR, ApplicationStatus::PROCESSING, and ApplicationStatus::READY.

void Core::slotLoad ( QString  _filename,
DataType  _type,
int &  _id 
) [private, slot]

A plugin wants to load a given file.

Slot for loading a given file.

Definition at line 465 of file openFunctions.cc.

References CoreWidget::addRecent(), coreWidget_, and loadObject().

Referenced by loadObject(), and loadPlugin().

void Core::slotLoadPlugin (  )  [private, slot]

Load Plugins from menu.

slot for loading Plugins

Definition at line 539 of file PluginLoader.cc.

References coreWidget_, loadPlugin(), BaseInterface::name(), OpenFlipperQSettings::setValue(), and OpenFlipperQSettings::value().

Referenced by slotShowPlugins().

void Core::slotLog ( Logtype  _type,
QString  _message 
) [private, slot]

Console logger.

Slot writing everything to the Logger widget.

This slot has to be called by all loggers. It is used to serialize and color the Output.

Parameters:
_type Logtype (defines the color of the output)
_message The message for output

Definition at line 93 of file Logging.cc.

References externalLog(), LOGERR, LOGINFO, LOGOUT, and LOGWARN.

Referenced by init(), and loadPlugin().

void Core::slotObjectSelectionChanged ( int  _id  )  [private, slot]

Called by Plugins if they changed the active object.

This function is called if the active object has changed. The information is passed to all plugins.

Definition at line 128 of file PluginCommunication.cc.

References objectSelectionChanged(), and updateView().

Referenced by loadPlugin(), and newObject().

void Core::slotObjectUpdated ( int  _identifier,
const UpdateType  _type = UPDATE_ALL 
) [private, slot]

Called by the plugins if they changed something in the object list (deleted, added,...)

Parameters:
_identifier Id of the object

This function is called by a plugin if it changed something in the object list (source,target,...). The information is passed to all plugins.

Parameters:
_identifier Id of the updated object

Definition at line 74 of file PluginCommunication.cc.

References PluginFunctions::getObject(), log(), LOGERR, LOGINFO, resetScenegraph(), signalObjectUpdated(), updateTypeName(), and updateView().

Referenced by loadPlugin(), slotCopyObject(), slotDeleteAllObjects(), and slotDeleteObject().

void Core::slotSetSlotDescription ( QString  _slotName,
QString  _slotDescription,
QStringList  _parameters,
QStringList  _descriptions 
) [private, slot]

set a description for one of the plugin's public slots

set descriptions for a scriptable slot

Definition at line 1142 of file Core.cc.

References log(), LOGERR, plugins, and PluginInfo::slotInfos.

Referenced by loadPlugin(), and setDescriptions().

void Core::slotSetTextureMode ( QString  _textureName,
QString  _mode 
) [private, slot]

A texture mode should be changed.

Called by a plugin if the parameters of a texture should be changed. The information is passed to all plugins. A Texturecontrol plugin should react on this event.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 244 of file PluginCommunication.cc.

References log(), LOGINFO, and setTextureMode().

void Core::slotSetTextureMode ( QString  _textureName,
QString  _mode,
int  _id 
) [private, slot]

A texture mode should be changed.

Called by a plugin if the parameters of a texture should be changed. The information is passed to all plugins. A Texturecontrol plugin should react on this event.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 227 of file PluginCommunication.cc.

References log(), LOGINFO, and setTextureMode().

Referenced by loadPlugin().

void Core::slotShowPlugins (  )  [private, slot]

Show Plugins Dialog.

slot for showing loaded Plugins

Definition at line 624 of file PluginLoader.cc.

References coreWidget_, loadPlugin(), plugins, slotLoadPlugin(), and unloadPlugin().

Referenced by init().

void Core::slotSwitchTexture ( QString  _textureName  )  [private, slot]

Tells Plugins to switch to the given Texture.

Called by plugins if texture mode should be switched

Definition at line 281 of file PluginCommunication.cc.

References switchTexture().

void Core::slotSwitchTexture ( QString  _textureName,
int  _id 
) [private, slot]

Tells Plugins to switch to the given Texture.

Called by plugins if texture mode should be switched

Definition at line 275 of file PluginCommunication.cc.

References switchTexture().

Referenced by loadPlugin().

void Core::slotTextureChangeImage ( QString  _textureName,
QImage &  _image,
int  _id 
) [private, slot]

Called by plugins if texture image should be changed.

Called by plugins if texture image should be changed

Definition at line 294 of file PluginCommunication.cc.

References textureChangeImage().

void Core::slotTextureChangeImage ( QString  _textureName,
QImage &  _image 
) [private, slot]

Called by plugins if texture image should be changed.

Called by plugins if texture image should be changed

Definition at line 288 of file PluginCommunication.cc.

References textureChangeImage().

Referenced by loadPlugin().

void Core::slotTextureFilename ( int  _id,
QString  _textureName,
QString &  _textureFilename 
) [private, slot]

Called by plugins if texture name should be fetched.

Called by plugins if texture filename should be fetched

Definition at line 330 of file PluginCommunication.cc.

References textureFilename().

Referenced by loadPlugin().

void Core::slotTextureGetImage ( QString  _textureName,
QImage &  _image,
int  _id 
) [private, slot]

Called by plugins if texture image should be fetched.

Called by plugins if texture image should be fetched

Definition at line 306 of file PluginCommunication.cc.

References textureGetImage().

void Core::slotTextureGetImage ( QString  _textureName,
QImage &  _image 
) [private, slot]

Called by plugins if texture image should be fetched.

Called by plugins if texture image should be fetched

Definition at line 300 of file PluginCommunication.cc.

References textureGetImage().

Referenced by loadPlugin().

void Core::slotTextureIndex ( QString  _textureName,
int  _id,
int &  _index 
) [private, slot]

Called by plugins if texture index should be fetched.

Called by plugins if texture index should be fetched

Definition at line 312 of file PluginCommunication.cc.

References textureIndex().

Referenced by loadPlugin().

void Core::slotTextureIndexPropertyName ( int  _id,
QString &  _propertyName 
) [private, slot]

Called by plugins if texture index property name should be fetched.

Called by plugins if texture index property name should be fetched

Definition at line 318 of file PluginCommunication.cc.

References textureIndexPropertyName().

Referenced by loadPlugin().

void Core::slotTextureName ( int  _id,
int  _textureIndex,
QString &  _textureName 
) [private, slot]

Called by plugins if texture name should be fetched.

Called by plugins if texture name should be fetched

Definition at line 324 of file PluginCommunication.cc.

References textureName().

Referenced by loadPlugin().

void Core::slotTextureUpdated ( QString  _textureName,
int  _identifier 
) [private, slot]

A Texture has been updated.

Called by a plugin if it updated a texture. The information is passed to all plugins. If a texture control plugin is available it has to react on the signal and update the visualization of the texture.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 261 of file PluginCommunication.cc.

References log(), LOGINFO, and updatedTextures().

Referenced by loadPlugin().

void Core::slotUpdateAllTextures (  )  [private, slot]

Update all textures in the plugins.

Called by a plugin if all textures should be updated. The information is passed to all plugins. All plugins providing textures should react on this event.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 220 of file PluginCommunication.cc.

References updateAllTextures().

Referenced by loadPlugin().

void Core::slotUpdateTexture ( QString  _name,
int  _identifier 
) [private, slot]

Tell the plugins to update the given texture.

Called by a plugin if a texture has to be updated. The information is passed to all plugins. The Plugin providing the given Texture should react on this event.
See in the documentation of the texture plugin interfaces for further detail.

Definition at line 186 of file PluginCommunication.cc.

References log(), LOGINFO, and updateTexture().

Referenced by loadPlugin().

void Core::snapshot ( unsigned int  _viewerId = 0,
int  _width = 0,
int  _height = 0,
bool  _alpha = false,
bool  _hideCoordsys = false 
) [slot]

Trigger a snapshot and increase the snapshot counter. Save snapshot to file determined by snapshotBaseFileName() and the current snapshot counter. The back buffer will be saved. The id of the current viewer is 0 (default).

Definition at line 1272 of file Core.cc.

References coreWidget_, CoreWidget::examiner_widgets_, log(), and LOGERR.

void Core::snapshotBaseFileName ( const QString &  _fname,
unsigned int  _viewerId = 0 
) [slot]

set the baseFilename for snapshots (a counter is automatically increased when snapshot() is called)

Definition at line 1232 of file Core.cc.

References log(), LOGERR, Viewer::ViewerProperties::snapshotBaseFileName(), and PluginFunctions::viewerProperties().

void Core::unloadPlugin ( QString  name  )  [private, slot]

Function for unloading Plugins.

Unload a Plugin with given name (slot).

Parameters:
name plugin name

Definition at line 649 of file PluginLoader.cc.

References checkSlot(), coreWidget_, log(), LOGERR, LOGOUT, plugins, and CoreWidget::viewModes_.

Referenced by loadPlugin(), and slotShowPlugins().

void Core::updateView (  )  [slot]

Called when a plugin requests an update in the viewer.

Update the view in the examiner widget

Definition at line 812 of file Core.cc.

References coreWidget_, CoreWidget::examiner_widgets_, log(), LOGINFO, redrawTime_, and redrawTimer_.

Referenced by applyOptions(), checkScenegraphDirty(), init(), loadPlugin(), slotObjectSelectionChanged(), slotObjectUpdated(), and slotVisibilityChanged().

void Core::writeApplicationOptions ( INIFile _ini  )  [private]

Write Application options to ini file.

Write the standard options to the given Ini File

Parameters:
_ini Inifile to use

Definition at line 292 of file ParseIni.cc.

References INIFile::add_entry(), INIFile::add_section(), coreWidget_, CoreWidget::saveKeyBindings(), saveOnExit(), INIFile::section_exists(), OpenFlipperQSettings::setValue(), OpenFlipperQSettings::value(), PluginFunctions::viewerProperties(), PluginFunctions::viewers(), and CoreWidget::viewModes_.

Referenced by saveOptions(), writeIniFile(), and writeOnExit().

void Core::writeIniFile ( QString  _filename,
bool  _relativePaths,
bool  _targetOnly,
bool  _saveSystemSettings,
bool  _savePluginSettings,
bool  _saveObjectInfo,
std::map< int, QString > &  _fileMapping 
) [private]

Write current status to ini file (Application and File Options).

Writes the complete status to an ini file ( All open objects and their Information )

Parameters:
_filename filename of the ini file to write with full path
_relativePaths This defines if the paths to the objects should be made relative
_targetOnly Select if we want all open objects or only the ones which are selected as target.
_saveSystemSettings Choose if you also want to save system settings into the ini file.
_savePluginSettings Choose if you want to save per Plugin global settings into the ini file.
_saveObjectInfo If you want to store information about all open objects this has to be true
_fileMappings If multiple files have the same name, all duplicates get renamed. Mapping: Id -> new file name.

Definition at line 553 of file ParseIni.cc.

References INIFile::add_entry(), INIFile::add_section(), ApplicationStatus::BLOCKED, INIFile::connect(), coreWidget_, LightObject::defaultLight(), INIFile::disconnect(), PluginFunctions::getObject(), iniSave(), iniSaveOptions(), log(), LOGERR, PluginFunctions::objectsEnd(), ApplicationStatus::READY, typeName(), and writeApplicationOptions().

Referenced by saveSettings().

void Core::writeObjFile ( QString  _filename,
bool  _relativePaths,
bool  _targetOnly,
std::map< int, QString > &  _fileMapping 
) [private]

Write current status to obj file (Application and File Options).

Writes the complete status to an obj file ( All open objects and their Information )

Todo:
After obj writing to one file is implemented in obj plugin, remove this Function and the whole File!

Definition at line 72 of file ParseObj.cc.

References ApplicationStatus::BLOCKED, coreWidget_, log(), LOGERR, PluginFunctions::objectsEnd(), and ApplicationStatus::READY.

Referenced by saveSettings().


The documentation for this class was generated from the following files:
Generated on Thu Jun 30 10:10:59 2011 for DeveloperDocumentation by  doxygen 1.6.3