Computer Assited Medical Intervention Tool Kit
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | List of all members
MMLComponent Class Reference

This class manage a monitoring document ".mml". More...

#include <MMLComponent.h>

+ Inheritance diagram for MMLComponent:

Public Member Functions

 MMLComponent (const QString &) throw (AbortException)
 Default constructor: give it the name of the file containing the data (.mml file)
virtual ~MMLComponent ()
 destructor
- Public Member Functions inherited from camitk::Component
 Component (const QString &file, const QString &name, Representation rep=NO_REPRESENTATION)
 Component constructor for top-level component (please use the other constructor for sub-level components).
 Component (Component *parentComponent, const QString &name, Representation rep=NO_REPRESENTATION) throw (AbortException)
 Component constructor for a Component that is a child of another Component You should not use this constructor for a top-level component.
virtual ~Component ()
 default destructor
Representation getRepresentation () const
 return the type of representation concretely implemented by this Component in the InteractiveViewer.
bool isTopLevel () const
 return true if this component is a top-level component
virtual ComponentgetParentComponent ()
 get the parent component
virtual ComponentgetTopLevelComponent ()
 get the top-level component
virtual void setModified (bool modified=true)
 set the modified flag
virtual void setVisibility (Viewer *, bool)
 set the visibility for a viewer
virtual bool getVisibility (Viewer *) const
 get the visibility of a viewer
virtual void refresh () const
 refresh all the viewer that are currently displaying this Component
virtual void refreshInterfaceNode ()
 Asks all viewers that are currently displaying this Component to rebuild the representation of the InterfaceNode for this Component.
virtual bool isSelected () const
 Check if this data component is selected.
virtual void setSelected (const bool, const bool recursive=true)
 Update the selection flag.
const QString getFileName () const
 get the file name where the data have to be stored/were stored
void setFileName (const QString &)
 set the file name where the data have to be stored
bool event (QEvent *e)
 Overriden from QObject, this one is only intercepting signal for dynamic property changed (see constructor).
QMenu * getActionAndPopupMenu ()
 Get a QMenu that contains all the action that can be applied to this component + the popup menu (if exists).
QStringList getHierarchy ()
bool isInstanceOf (QString className)
 Assert that a Component instance really inherits from a given className.
virtual QWidget * getPropertyWidget (QWidget *parent=0)
 get the property widget to display.
virtual QObject * getPropertyObject ()
 get the property object that could be understood by PropertyEditor.
void updateProperty (QString name, QVariant value)
 update property: if you override this method, do not forget to call the superclass method for the property not managed locally in order to properly manage all inherited dynamic properties.
virtual void addChild (InterfaceNode *)
 add a child Component (sub item in the hierarchy), and modify the child's parent to be equal to this instance
virtual void attachChild (InterfaceNode *)
 add a child Component (but leave its parent unchanged)
virtual void removeChild (InterfaceNode *)
 remove from the the sub item vector.
virtual void setParent (InterfaceNode *)
 set the parent Component. This method automatically remove this Component from its previous (if already had one parent Component)
virtual void deleteChildren ()
 delete all sub Component, but do not delete the pointer (only the top-level component has the right to do that)
virtual QString getName () const
 get the name to be displayed
virtual void setName (const QString &)
 set the name to be displayed
virtual const ComponentListgetChildren ()
 get the list of the InterfaceNode children (sub items in the hierarchy)
virtual bool doubleClicked ()
 this method is called each time the InterfaceNode is double clicked by the user.
virtual InterfaceNodegetParent ()
 get the parent Component
virtual QPixmap getIcon ()
 Get the pixmap that will be displayed for this node.
virtual bool inItalic () const
 A component name is not displayed in italic by default.
const QString getLabel () const
void setLabel (QString newName)
 set the string used to display the label, do the same as setName
virtual vtkSmartPointer
< vtkPointSet > 
getPointSet ()
virtual void setPointSet (vtkSmartPointer< vtkPointSet > param)
 set the low-level data set.
virtual void setPointData (vtkSmartPointer< vtkDataArray > param)
 set the point data (may contains a lookup table).
virtual vtkSmartPointer
< vtkAlgorithmOutput > 
getDataPort () const
 get the custom algorithm pipeline input.
virtual void setDataConnection (vtkSmartPointer< vtkAlgorithmOutput > param)
 Set/reset the connection for the InterfaceGeometry internal algorithm.
virtual vtkSmartPointer< vtkActor > getActor (const RenderingModes param)
 Return the actor for the representation mode, NULL if the actor doesn't exist.
virtual vtkSmartPointer< vtkProp > getProp (const QString &param)
 Return the vtkProp (actors, volumes and annotations) corresponding to the given name.
virtual unsigned int getNumberOfProp () const
 return the number of additional prop
virtual vtkSmartPointer< vtkProp > getProp (unsigned int index)
 return an additional prop by its index
virtual bool addProp (const QString &name, vtkSmartPointer< vtkProp > prop)
 insert an additional prop, defining it by its name (default visibility = false)
virtual bool removeProp (const QString &name)
 remove a given additional prop.
virtual void pointPicked (vtkIdType, bool)
 an inherited class can redefine this method something specific.
virtual void cellPicked (vtkIdType, bool)
 an inherited class can redefine this method something specific.
virtual void getBounds (double bounds[6])
 compute the object's bounding box [xmin,xmax, ymin,ymax, zmin,zmax], see Component.cpp
virtual double getBoundingRadius ()
 compute the object's bounding sphere radius,
virtual void setPointPosition (const unsigned int param1, const double param2, const double param3, const double param4)
 set a given point position
virtual void setRenderingModes (const RenderingModes param)
virtual const RenderingModes getRenderingModes () const
 see Component.cpp
virtual void setEnhancedModes (const EnhancedModes param)
 set the enhanced mode
virtual const EnhancedModes getEnhancedModes () const
 get the current enhanced mode
virtual void setActorColor (const RenderingModes param1, double param2[4])
 Set the color of given representation modes.
virtual void setActorColor (const RenderingModes param1, const double param2, const double param3, const double param4)
 Set the color of given representation modes.
virtual void getActorColor (const RenderingModes, double[4])
 see Component.cpp
virtual void setColor (const double param1, const double param2, const double param3)
 Set an (r,g,b) color to all representation modes, without changing the opacity.
virtual void setColor (const double param1, const double param2, const double param3, const double param4)
 Set an (r,g,b,a) color to all representation modes.
virtual void setActorOpacity (const RenderingModes param1, const double param2)
 Set the opacity of this representation modes. WARNING color field (surfaceColor, ...) are not modified!
virtual double getActorOpacity (const RenderingModes param) const
 Return the opacity of a given renderng mode.
virtual void setOpacity (const double param)
 Set the opacity of this object. WARNING color field (surfaceColor, ...) are not modified!
virtual void setTexture (vtkSmartPointer< vtkTexture > param)
 Set a texture to this object.
virtual void setGlyphType (const GlyphTypes type, const double size=0.0)
 Set the glyph type (a glyph is a geometric representation attached to every point in the input dataset).
virtual void setLinesAsTubes (bool param)
 set the lines as tubes (works only for vtkDataSet representation that contains lines)
virtual vtkSmartPointer
< vtkImageData > 
getImageData () const
 Return the displayed images as a vtkImageData.
virtual void setOriginalVolume (vtkSmartPointer< vtkImageData > param)
 set the original volume image data (the source vtkImageData before any reslice) and refresh the vtk pipeline
virtual vtkSmartPointer
< vtkImageActor > 
get2DImageActor () const
 Return the vtkImageActor (vtkProp) representing a slice to be displayed in 2D.
virtual vtkSmartPointer
< vtkImageActor > 
get3DImageActor () const
 Return the vtkImageActor (vtkProp) representing a slice to be displayed in 2D.
virtual vtkSmartPointer< vtkActor > getPickPlaneActor () const
 Return the vtkActor used to pick pixels in the slices.
virtual vtkSmartPointer< vtkActor > getPixelActor ()
 Return the vtkActor used to pick pixels in the slices.
virtual void pixelPicked (double param1, double param2, double param3)
 This method is called when the associated plane has been picked in the InteractiveViewer, the given coordinates is position where the plane was picked.
virtual void updatePickPlane ()
virtual void setSlice (int param)
 Set the current slice index.
virtual void setSlice (double param1, double param2, double param3)
 Set the slice corresponding to the given world coordinates.
virtual void setRotationX (double param)
 Set the current angle to the arbitrary slice.
virtual void setRotationY (double param)
virtual void setRotationZ (double param)
virtual int getNumberOfColors () const
 Return the number of colors in the images.
virtual void setPixelRealPosition (double param1, double param2, double param3)
 move the pixel selection green indicator (pixelActor) to the given real position
virtual double getRotationX () const
 see Component.cpp
virtual double getRotationY () const
 see Component.cpp
virtual double getRotationZ () const
 see Component.cpp
virtual int getNumberOfSlices () const
 see Component.cpp
virtual int getSlice () const
 see Component.cpp
- Public Member Functions inherited from camitk::InterfaceProperty
virtual ~InterfaceProperty ()
 empty virtual destructor, to avoid memory leak
- Public Member Functions inherited from camitk::InterfaceNode
virtual ~InterfaceNode ()
 empty virtual destructor, to avoid memory leak
- Public Member Functions inherited from camitk::InterfaceGeometry
virtual ~InterfaceGeometry ()
 empty virtual destructor, to avoid memory leak
- Public Member Functions inherited from camitk::InterfaceBitMap
virtual ~InterfaceBitMap ()
 virtual destructor

Redefined from Extension

MonitoringGuiManager * mmlGUI
 the mml GUI class is used directly
QDockWidget * mmlDock
 to put the mmlGUI
PMManagerDCpmMgr
 physical model manager
MMLDisplaydisplay
 display manager
QString exportedMml
 when a .scn is loaded, name of the automatically exported mml file (empty string otherwise)
MMLComponentPopupmyPopupMenu
 the popup menu
bool save ()
 save the current mml in the current file name.
void initRepresentation ()
 Instanciate the concrete representation (either InterfaceGeometry or InterfaceBitMap) if needed.
MonitoringGuiManager * getMonitoringGuiManager ()
 get MonitoringGuiManager
PMManagerDCgetPMManager ()
 get Physical model manager
MMLDisplaygetDisplay ()
 get the display
void connectPml ()
 connect pml
virtual QMenu * getPopupMenu (QWidget *parent)
 Overriden method so that we actually can build a popup menu with different actions.
bool isDockVisible ()
 return true if mmlDock is visible
void setDockVisible (bool visible)
 show or hide mmlDock
void saveMML ()
 save the mml in the current filename (and the pml if needed)
virtual bool getModified () const
 check if the mml or pml were modified in the UI

Additional Inherited Members

- Public Types inherited from camitk::Component
enum  Representation { GEOMETRY, SLICE, NO_REPRESENTATION }
 The different representation that can be implemented to represent this Component in the InteractiveViewer. More...
- Public Attributes inherited from camitk::InterfaceBitMap
QMap< QString, vtkSmartPointer
< vtkProp > > 
extraProp
 The additional map for prop (include at least "label" and "glyph".
- Protected Attributes inherited from camitk::Component
ComponentList childrenComponent
 The explorer sub items.
bool isSelectedFlag
 tells if this particular Component is selected or not
bool modifiedFlag
 the modificatio flag (could be extended to manage a undo/redo list)
QString myFileName
 the file name from which the Component is loaded
InterfaceGeometrymyGeometry
 myGeometry is the 3d representation of this Component, the Component delegates all InterfaceGeometry activity to myGeometry (delegation pattern)
InterfaceNodemyParentNode
 who is the boss? The Component!
InterfaceBitMapmySlice
 mySlice is the slice representation of this data component, the Component delegates all InterfaceBitMap activity to mySlice (delegation pattern)

Detailed Description

This class manage a monitoring document ".mml".

Constructor & Destructor Documentation

MMLComponent::MMLComponent ( const QString &  fileName) throw (AbortException)

Default constructor: give it the name of the file containing the data (.mml file)

References CAMITK_ERROR, PMManagerDC::getLoadsManager(), and LoadsManager::setLoads().

MMLComponent::~MMLComponent ( )
virtual

destructor

References display, mmlDock, mmlGUI, myPopupMenu, and pmMgr.

Member Function Documentation

void MMLComponent::connectPml ( )
MMLDisplay * MMLComponent::getDisplay ( )

get the display

References display.

Referenced by Statistics::Statistics(), and Tabular::Tabular().

bool MMLComponent::getModified ( ) const
virtual

check if the mml or pml were modified in the UI

Reimplemented from camitk::Component.

References PMManagerDC::getModified(), camitk::Component::getModified(), and pmMgr.

MonitoringGuiManager * MMLComponent::getMonitoringGuiManager ( )
PMManagerDC * MMLComponent::getPMManager ( )

get Physical model manager

References pmMgr.

Referenced by Arrows::hide(), Colors::hide(), Arrows::update(), Colors::update(), and MMLDisplay::updateDisplay().

QMenu * MMLComponent::getPopupMenu ( QWidget *  parent)
virtual

Overriden method so that we actually can build a popup menu with different actions.

Reimplemented from camitk::Component.

References myPopupMenu.

void MMLComponent::initRepresentation ( )
inlinevirtual

Instanciate the concrete representation (either InterfaceGeometry or InterfaceBitMap) if needed.

This method have to instanciate Slice (mySlice) or Geometry (myGeometry) that does all the work for this Component, i.e. the adaptee handler. Generally this method should be called in the Component constructor.

Implements camitk::Component.

bool MMLComponent::isDockVisible ( )

return true if mmlDock is visible

References mmlDock.

bool MMLComponent::save ( )

save the current mml in the current file name.

Returns
false if there was a problem during the saving procedure
void MMLComponent::saveMML ( )

save the mml in the current filename (and the pml if needed)

References camitk::Component::getFileName(), and getMonitoringGuiManager().

Referenced by MMLComponentExtension::save().

void MMLComponent::setDockVisible ( bool  visible)

show or hide mmlDock

References mmlDock.

Member Data Documentation

MMLDisplay* MMLComponent::display
private

display manager

Referenced by connectPml(), getDisplay(), and ~MMLComponent().

QString MMLComponent::exportedMml
private

when a .scn is loaded, name of the automatically exported mml file (empty string otherwise)

QDockWidget* MMLComponent::mmlDock
private

to put the mmlGUI

Referenced by isDockVisible(), setDockVisible(), and ~MMLComponent().

MonitoringGuiManager* MMLComponent::mmlGUI
private

the mml GUI class is used directly

Referenced by connectPml(), getMonitoringGuiManager(), and ~MMLComponent().

MMLComponentPopup* MMLComponent::myPopupMenu
private

the popup menu

Referenced by getPopupMenu(), and ~MMLComponent().

PMManagerDC* MMLComponent::pmMgr
private

physical model manager

Referenced by connectPml(), getModified(), getPMManager(), and ~MMLComponent().


The documentation for this class was generated from the following files: