MorphoGraphX  2.0-1-227
Classes | Public Types | Public Member Functions | Public Attributes | Static Public Attributes | Friends | List of all members
mgx::Process Class Reference

#include <Process.hpp>

+ Inheritance diagram for mgx::Process:

Classes

class  CheckState
 

Public Types

enum  ProcessAction { PROCESS_RUN, PROCESS_STEP, PROCESS_REWIND }
 Enumeration for process flow control. More...
 
enum  StackCheckType {
  STACK_ANY, STACK_NON_EMPTY, STACK_VISIBLE, STACK_EMPTY,
  STACK_SCALED, STACK_TRANSFORMED, STACK_NON_SCALED, STACK_NON_TRANSFORMED
}
 Enumeration for the bitfield that identifies stack properties. More...
 
enum  StoreCheckType {
  STORE_ANY, STORE_NON_EMPTY, STORE_VISIBLE, STORE_EMPTY,
  STORE_LABEL, STORE_NON_LABEL, STORE_SCALED, STORE_TRANSFORMED,
  STORE_NON_SCALED, STORE_NON_TRANSFORMED, STORE_WORK, STORE_MAIN
}
 Enumeration for the bitfield that identifies store properties. More...
 
enum  MeshCheckType {
  MESH_ANY, MESH_NON_EMPTY, MESH_VISIBLE, MESH_HEAT,
  MESH_LABEL, MESH_NORMAL, MESH_SIGNAL, MESH_TEXTURE,
  MESH_IMAGE, MESH_SHOW_MESH, MESH_SHOW_SURF, MESH_ALL,
  MESH_BORDER, MESH_CELLMAP, MESH_CELLS, MESH_IMG_TEX,
  MESH_SCALED, MESH_TRANSFORMED, MESH_EMPTY, MESH_NON_CELLS,
  MESH_NON_IMG_TEX, MESH_NON_SCALED, MESH_NON_TRANSFORMED, MESH_USE_PARENTS
}
 Enumeration for the bitfield that identifies mesh properties. More...
 
enum  CheckType { CHECK_STACK, CHECK_STORE, CHECK_MESH }
 Enumeration of the type of checks that can be performed. More...
 
enum  CheckWhich { CHECK_CURRENT }
 
typedef std::vector< Stack * >::iterator stack_iterator
 
typedef std::vector< Stack * >::const_iterator const_stack_iterator
 
typedef std::vector< Mesh * >::iterator mesh_iterator
 
typedef std::vector< Mesh * >::const_iterator const_mesh_iterator
 

Public Member Functions

 Process (const Process &p)
 Copy constructor. More...
 
virtual ~Process ()
 Virtual destructor. More...
 
void actingFile (const QString &filename, bool project_file=false)
 Method to be called anytime a file is acted on (i.e. More...
 
QString actingFile () const
 Get the file currently defining the path of the system. More...
 
QString pythonCall (const QStringList &parms) const
 Return the python call describing the current process. More...
 
int stackCount () const
 Number of stacks available to the process. More...
 
Stackstack (int i)
 Returns the ith stack, or 0 if there is no such stack. More...
 
StackcurrentStack ()
 Returns the current stack (i.e. More...
 
StackotherStack ()
 Returns the other stack (i.e. More...
 
int currentStackId () const
 Return the id (i.e. More...
 
int otherStackId () const
 Return the id (i.e. More...
 
void setCurrentStackId (int i)
 Change which stack is current. More...
 
bool setCurrentStack (int id, const QString &store)
 
bool takeSnapshot (QString filename, float overSampling=1.0f, int width=0, int height=0, int quality=95, bool expand_frustum=false)
 Save screen shot to a file. More...
 
bool setStatus (const QString &msg, bool alsoPrint=true)
 Display a message in the status bar
More...
 
bool systemCommand (int command, const QStringList &parms)
 Run a system command. More...
 
MGXCameracamera ()
 Get the camera. More...
 
std::pair< stack_iterator, stack_iteratorstacks ()
 Iterate over all the stacks. More...
 
std::pair< const_stack_iterator, const_stack_iteratorstacks () const
 Iterate over all the stacks. More...
 
StackaddStack ()
 Add a new stack to the process. More...
 
bool deleteStack (int i)
 Delete the stack of given id. More...
 
int meshCount () const
 Returns the number of mesh available to the process. More...
 
Meshmesh (int i)
 Returns the ith mesh. More...
 
MeshcurrentMesh ()
 Returns the current mesh (i.e. More...
 
MeshotherMesh ()
 Returns the other mesh (i.e. More...
 
int currentMeshId () const
 Returns the id (i.e. More...
 
int otherMeshId () const
 Returns the id (i.e. More...
 
void setCurrentMeshId (int i)
 Change which mesh is current. More...
 
std::pair< mesh_iterator, mesh_iteratormeshes ()
 Iterate over all the meshs. More...
 
std::pair< const_mesh_iterator, const_mesh_iteratormeshes () const
 Iterate over all the meshs. More...
 
MeshaddMesh (const Stack *stack)
 Add a mesh to the process for the given stack. More...
 
bool deleteMesh (int i)
 Remove a mesh from the process. More...
 
int selectedLabel () const
 Get the current selected label. More...
 
void setSelectedLabel (int label)
 Change the current selected label. More...
 
float globalBrightness ()
 Return the current setting for the global brightness level. More...
 
float globalContrast ()
 Return the current setting for the global contrast level. More...
 
void setGlobalBrightness (float value)
 Change the current setting for the global brightness level. More...
 
void setGlobalContrast (float value)
 Change the current setting for the global contrast level. More...
 
bool meshSelection () const
 Returns if the user has mesh selection active. More...
 
bool lineBorderSelection () const
 Returns is the user has line border selection active. More...
 
bool updateState ()
 Update the Gui of MorphoGraphX. More...
 
bool updateViewer ()
 Tell the viewer to redraw. More...
 
bool loadView (const QString &fileName)
 Load viewfile. More...
 
bool saveView (const QString &fileName)
 Save viewfile. More...
 
bool setErrorMessage (const QString &str)
 Set an error message that will be displayed if the process returns false. More...
 
QString errorMessage () const
 Get the current error message. More...
 
void setWarningMessage (const QString &str)
 Set a warning message that will be displayed if the process returns true. More...
 
QString warningMessage () const
 Get the current warning message. More...
 
void userCancel () const
 Throw an exception informing the system that the user canceled the current process. More...
 
const QString & file () const
 Get the name of the file that was used to load the current process (i.e. More...
 
Clipclip1 ()
 Return the object defining the first clipping region. More...
 
Clipclip2 ()
 Return the object defining the second clipping region. More...
 
Clipclip3 ()
 Return the object defining the third clipping region. More...
 
const Clipclip1 () const
 Return the object defining the first clipping region. More...
 
const Clipclip2 () const
 Return the object defining the second clipping region. More...
 
const Clipclip3 () const
 Return the object defining the third clipping region. More...
 
CuttingSurfacecuttingSurface ()
 Return the cutting surface. More...
 
const CuttingSurfacecuttingSurface () const
 Return the cutting surface. More...
 
ProcessmakeProcess (const QString &processName)
 Creates a process object by name. More...
 
template<typename ProcessT >
bool getProcess (const QString &processName, ProcessT *&p)
 Gets process. More...
 
bool setCurrentParms ()
 Set the parms from the GUI. More...
 
bool runProcess (Process &proc, QStringList &parms) throw ()
 Launch a process with generic arguments. More...
 
bool runProcess (const QString &processName, QStringList &parms) throw ()
 Launch a process by name. More...
 
virtual bool initialize (QWidget *)
 Initialize the process. More...
 
virtual bool run ()
 Runs the process. More...
 
virtual bool finalize (QWidget *)
 This is an optional method that is called from the main thread before the process is run. More...
 
CheckState checkState ()
 Call this function and convert the result to a boolean. More...
 
- Public Member Functions inherited from mgx::ProcessParms
 ProcessParms ()
 
virtual ~ProcessParms ()
 
QString name () const
 Process name that is using the parameters. More...
 
QString description () const
 Process description. More...
 
QStringList parmNames () const
 List of named parameters. More...
 
QStringList parmDescs () const
 List of parameters descriptions. More...
 
QStringList parmDefaults () const
 List of default parms. More...
 
ParmChoiceList parmChoice () const
 Allows the parameter to have a pick list in the GUI. More...
 
QIcon icon () const
 Icon to use to represent the process in the GUI. More...
 
QString parm (const QString &name) const
 Get a single parameter value by name. More...
 
const QStringList & getParms ()
 Get the list of parameter values. More...
 
bool setName (const QString &name)
 Set the name. More...
 
bool setDesc (const QString &description)
 Set the description. More...
 
bool addParm (const QString &parmName, const QString &desc, const QString &def, const QStringList &choices=QStringList())
 Add a parameter to the list. More...
 
bool insertParm (const QString &parmName, const QString &desc, const QString &def, int pos, const QStringList &choices=QStringList())
 Insert a parameter to the list. More...
 
bool setParm (const QString &parmName, const QString &parm)
 Set the parameter's value. More...
 
bool setParms (const QStringList &parms)
 Set all the parameter values. More...
 
bool setParmDesc (const QString &parmName, const QString &desc)
 Set the parameter's description. More...
 
bool setParmDefault (const QString &parmName, const QString &def)
 Set the parameter's default value. More...
 
bool setParmChoices (const QString &parmName, const QStringList &choices)
 Set the parameter's choices. More...
 
bool setIcon (const QIcon &icon)
 Set the icon. More...
 
QStringList parmList (const QString &key=QString()) const
 Return a list of parameter names. More...
 

Public Attributes

PrivateProcess * p
 

Static Public Attributes

static unsigned int processVersion
 
static std::vector< Colorf > & LabelColors
 

Friends

class SetupProcess
 
class Process::CheckState
 

Internal methods

bool stackCheck (int checks, int which)
 Check stack properties. More...
 
bool storeCheck (int checks, int which)
 Check store properties. More...
 
bool meshCheck (int checks, int which)
 Check mesh properties. More...
 
QString stackError (int checks, int which)
 Generate a standardised string describing how the stack should be to not generate an error. More...
 
QString storeError (int checks, int which)
 Generate a standardised string describing how the store should be to not generate an error. More...
 
QString meshError (int checks, int which)
 Generate a standardised string describing how the mesh should be to not generate an error. More...
 
void systemCommandGui (mgx::Process *, int, QStringList)
 
void systemCommandProcess (mgx::Process *, int, QStringList)
 

Additional Inherited Members

- Static Public Member Functions inherited from mgx::ProcessParms
static QStringList booleanChoice ()
 Helper function that provides a list of choices for a boolean argument. More...
 
static QStringList storeChoice ()
 Helper function that provides a list of choices for choosing from the main or work stack. More...
 
static QStringList stackChoice ()
 Helper function that provides a list of choices for choosing between stack 1 and 2. More...
 
static QStringList meshChoice ()
 Helper function that provides a list of choices for choosing between stack 1 and 2. More...
 
static QStringList dimensionChoice ()
 Helper function that provides a list of choices for choosing the dimension. More...
 
static QStringList dimChoice ()
 Helper function that provides a list of choices for choosing the dimension. More...
 

Detailed Description

This is the main process class, the one all process inherit from.

Definition at line 219 of file Process.hpp.

Member Typedef Documentation

◆ const_mesh_iterator

typedef std::vector<Mesh*>::const_iterator mgx::Process::const_mesh_iterator

Definition at line 230 of file Process.hpp.

◆ const_stack_iterator

typedef std::vector<Stack*>::const_iterator mgx::Process::const_stack_iterator

Definition at line 227 of file Process.hpp.

◆ mesh_iterator

typedef std::vector<Mesh*>::iterator mgx::Process::mesh_iterator

Definition at line 229 of file Process.hpp.

◆ stack_iterator

typedef std::vector<Stack*>::iterator mgx::Process::stack_iterator

Definition at line 226 of file Process.hpp.

Member Enumeration Documentation

◆ CheckType

Enumeration of the type of checks that can be performed.

Enumerator
CHECK_STACK 

Check stack properties.

CHECK_STORE 

Check store properties.

CHECK_MESH 

Check mesh properties.

Definition at line 673 of file Process.hpp.

◆ CheckWhich

Enumerator
CHECK_CURRENT 

Constant marking the element to check is the current one.

Definition at line 679 of file Process.hpp.

◆ MeshCheckType

Enumeration for the bitfield that identifies mesh properties.

Enumerator
MESH_ANY 

Any mesh.

MESH_NON_EMPTY 

Non-empty mesh.

MESH_VISIBLE 

Either mesh or surface are visible.

MESH_HEAT 

Show the heat map.

MESH_LABEL 

Show the label.

MESH_NORMAL 

Show the normal.

MESH_SIGNAL 

Show the signal.

MESH_TEXTURE 

Show the texture.

MESH_IMAGE 

Show the image.

MESH_SHOW_MESH 

Show the mesh.

MESH_SHOW_SURF 

Show the surface.

MESH_ALL 

Show the all mesh.

MESH_BORDER 

Show border only.

MESH_CELLMAP 

Show the cell map.

MESH_CELLS 

This mesh is a cell mesh.

MESH_IMG_TEX 

This mesh has a texture.

MESH_SCALED 

This mesh is scaled.

MESH_TRANSFORMED 

This mesh is transformed.

MESH_EMPTY 

Empty mesh.

MESH_NON_CELLS 

This mesh is not a cell mesh.

MESH_NON_IMG_TEX 

This mesh doesn't have an image texture.

MESH_NON_SCALED 

This mesh is non-scaled.

MESH_NON_TRANSFORMED 

This mesh is non-transformed.

MESH_USE_PARENTS 

Show the parent label.

Definition at line 636 of file Process.hpp.

◆ ProcessAction

Enumeration for process flow control.

Enumerator
PROCESS_RUN 
PROCESS_STEP 
PROCESS_REWIND 

Definition at line 540 of file Process.hpp.

◆ StackCheckType

Enumeration for the bitfield that identifies stack properties.

Enumerator
STACK_ANY 

Any stack.

STACK_NON_EMPTY 

Non-empty stack.

STACK_VISIBLE 

Visible stack.

STACK_EMPTY 

Empty stack.

STACK_SCALED 

Scaled stack.

STACK_TRANSFORMED 

Transformed stack.

STACK_NON_SCALED 

Non-Scaled stack.

STACK_NON_TRANSFORMED 

Non-Transformed stack.

Definition at line 600 of file Process.hpp.

◆ StoreCheckType

Enumeration for the bitfield that identifies store properties.

Enumerator
STORE_ANY 

Any store.

STORE_NON_EMPTY 

Non-Empty store.

STORE_VISIBLE 

Visible store.

STORE_EMPTY 

Empty store.

STORE_LABEL 

Label store.

STORE_NON_LABEL 

Non-Label store.

STORE_SCALED 

Scaled store.

STORE_TRANSFORMED 

Transformed store.

STORE_NON_SCALED 

Non-Scaled store.

STORE_NON_TRANSFORMED 

Non-Transformed store.

STORE_WORK 

Work store.

STORE_MAIN 

Main store.

Definition at line 615 of file Process.hpp.

Constructor & Destructor Documentation

◆ Process()

mgx::Process::Process ( const Process p)

Copy constructor.

Use when inheriting from Process. Normally makeProcess is used to create new processes.

◆ ~Process()

virtual mgx::Process::~Process ( )
inlinevirtual

Virtual destructor.

Definition at line 249 of file Process.hpp.

Member Function Documentation

◆ actingFile() [1/2]

QString mgx::Process::actingFile ( ) const

Get the file currently defining the path of the system.

◆ actingFile() [2/2]

void mgx::Process::actingFile ( const QString &  filename,
bool  project_file = false 
)

Method to be called anytime a file is acted on (i.e.

saved/loaded).

If needed, it will set the current folder to the one containing the file and start a session

If it is a project file (i.e. ending in mgxv), then project_file should be set to true to force the change in folder.

◆ addMesh()

Mesh* mgx::Process::addMesh ( const Stack stack)

Add a mesh to the process for the given stack.

◆ addStack()

Stack* mgx::Process::addStack ( )

Add a new stack to the process.

◆ camera()

MGXCamera* mgx::Process::camera ( )

Get the camera.

◆ checkState()

CheckState mgx::Process::checkState ( )

Call this function and convert the result to a boolean.

If the checks hold, it will return true. If not, it will return false and set the error message to a standard, fully descriptive description of what conditions should be met to use this process.

Syntax:

checkState().TYPE(CONSTRAINTS).TYPE(CONSTRAINTS)...;

Example:

if(!checkState().store(STORE_MAIN | STORE_NON_EMPTY) .store(STORE_WORK | STORE_LABEL)) return false;

FIXME: what does the state apply to? FIXME: why is it necessary to check it? FIXME: how is the state changed?

◆ clip1() [1/2]

Clip* mgx::Process::clip1 ( )

Return the object defining the first clipping region.

◆ clip1() [2/2]

const Clip* mgx::Process::clip1 ( ) const

Return the object defining the first clipping region.

◆ clip2() [1/2]

Clip* mgx::Process::clip2 ( )

Return the object defining the second clipping region.

◆ clip2() [2/2]

const Clip* mgx::Process::clip2 ( ) const

Return the object defining the second clipping region.

◆ clip3() [1/2]

Clip* mgx::Process::clip3 ( )

Return the object defining the third clipping region.

◆ clip3() [2/2]

const Clip* mgx::Process::clip3 ( ) const

Return the object defining the third clipping region.

◆ currentMesh()

Mesh* mgx::Process::currentMesh ( )

Returns the current mesh (i.e.

the mesh currently selected by the user)

◆ currentMeshId()

int mgx::Process::currentMeshId ( ) const

Returns the id (i.e.

number) of the current mesh

◆ currentStack()

Stack* mgx::Process::currentStack ( )

Returns the current stack (i.e.

the stack currently selected by the user).

◆ currentStackId()

int mgx::Process::currentStackId ( ) const

Return the id (i.e.

number) of the current stack.

◆ cuttingSurface() [1/2]

CuttingSurface* mgx::Process::cuttingSurface ( )

Return the cutting surface.

◆ cuttingSurface() [2/2]

const CuttingSurface* mgx::Process::cuttingSurface ( ) const

Return the cutting surface.

◆ deleteMesh()

bool mgx::Process::deleteMesh ( int  i)

Remove a mesh from the process.

◆ deleteStack()

bool mgx::Process::deleteStack ( int  i)

Delete the stack of given id.

Note
The current implementation assumes there are at least two stacks always available

◆ errorMessage()

QString mgx::Process::errorMessage ( ) const

Get the current error message.

◆ file()

const QString& mgx::Process::file ( ) const

Get the name of the file that was used to load the current process (i.e.

the mgxv file), if any.

◆ finalize()

virtual bool mgx::Process::finalize ( QWidget *  )
inlinevirtual

This is an optional method that is called from the main thread before the process is run.

If there is an active GUI, then parent will be set.

Parameters
parentPointer to the parent widget if there is an active GUI.

Definition at line 587 of file Process.hpp.

◆ getProcess()

template<typename ProcessT >
bool mgx::Process::getProcess ( const QString &  processName,
ProcessT *&  p 
)
inline

Gets process.

Definition at line 523 of file Process.hpp.

◆ globalBrightness()

float mgx::Process::globalBrightness ( )

Return the current setting for the global brightness level.

◆ globalContrast()

float mgx::Process::globalContrast ( )

Return the current setting for the global contrast level.

◆ initialize()

virtual bool mgx::Process::initialize ( QWidget *  )
inlinevirtual

Initialize the process.

Called from the main (GUI) thread before the process is run. If there is an active GUI, then parent will be set.

The process can use the method to update the argument list with a dialog. If the arguments are updates, the process should return true

Parameters
parentPointer to the parent widget if there is an active GUI.
Returns
false if the process is not to run afterwards

Reimplemented in mgx::ExportPlaneData, mgx::CreateJunctionGraphStack, mgx::CreateJunctionGraph, mgx::LoadTransform, mgx::MeshCircularHistogram, mgx::SaveTransform, mgx::HeatAndChangeMap, mgx::StackOpenSaveFolder, mgx::LabelledStackComparison, mgx::WriteGrowthMapData, mgx::CombineAttrMaps, mgx::QuickSaveFile, mgx::SaveViewFile, mgx::DataAnalysisGUS, mgx::MeshExport, mgx::DataAnalysis, mgx::LoadParents, mgx::ImportParentAttrNew, mgx::SaveParents, mgx::LoadViewFile, mgx::CellAtlas, mgx::LoadHeatMap, mgx::MergeParentFiles, mgx::MeshImport, mgx::SaveHeatMap, mgx::MeshSave, mgx::LoadCellData, mgx::DisplayPDGsVertex, mgx::MeshLoad, mgx::ExportJunctionAnglesNew, mgx::FlipBezierLine, mgx::DisplayPCAOld, mgx::NewBezierRingFromSelected, mgx::ExportJunctionAngles, mgx::SaveNeighborhoodData2D, mgx::StackOpen, mgx::NewBezierRing, mgx::ExportInternalAngles, mgx::SaveNeighborhoodData, mgx::DisplayPDGs, mgx::SaveCellData, mgx::StackExport, mgx::MeasureBezierExport, mgx::ComputeHeatMap, mgx::SaveCellContourFile, mgx::StackHistogramBezier, mgx::SaveAttributesCSVExtended, mgx::LoadPlyFileCellGraph, mgx::StackSave, mgx::StackCircularHistogram, mgx::NewBezier, mgx::StackImport, mgx::SaveAttributesCSV, mgx::SaveGlobalTransform, mgx::PythonProcess, mgx::SavePlyFile, mgx::LoadCellAxis, mgx::SaveBezier, mgx::ManageAttributes, mgx::SaveCellAxis, and mgx::LoadBezier.

Definition at line 572 of file Process.hpp.

◆ lineBorderSelection()

bool mgx::Process::lineBorderSelection ( ) const

Returns is the user has line border selection active.

◆ loadView()

bool mgx::Process::loadView ( const QString &  fileName)

Load viewfile.

◆ makeProcess()

Process* mgx::Process::makeProcess ( const QString &  processName)

Creates a process object by name.

◆ mesh()

Mesh* mgx::Process::mesh ( int  i)

Returns the ith mesh.

◆ meshCheck()

bool mgx::Process::meshCheck ( int  checks,
int  which 
)
protected

Check mesh properties.

◆ meshCount()

int mgx::Process::meshCount ( ) const

Returns the number of mesh available to the process.

◆ meshError()

QString mgx::Process::meshError ( int  checks,
int  which 
)
protected

Generate a standardised string describing how the mesh should be to not generate an error.

◆ meshes() [1/2]

std::pair<mesh_iterator, mesh_iterator> mgx::Process::meshes ( )

Iterate over all the meshs.

◆ meshes() [2/2]

std::pair<const_mesh_iterator, const_mesh_iterator> mgx::Process::meshes ( ) const

Iterate over all the meshs.

◆ meshSelection()

bool mgx::Process::meshSelection ( ) const

Returns if the user has mesh selection active.

◆ otherMesh()

Mesh* mgx::Process::otherMesh ( )

Returns the other mesh (i.e.

the mesh not currently selected by the user)

◆ otherMeshId()

int mgx::Process::otherMeshId ( ) const

Returns the id (i.e.

number) of the other mesh

◆ otherStack()

Stack* mgx::Process::otherStack ( )

Returns the other stack (i.e.

the stack not currently selected by the user).

◆ otherStackId()

int mgx::Process::otherStackId ( ) const

Return the id (i.e.

number) of the other stack.

◆ pythonCall()

QString mgx::Process::pythonCall ( const QStringList &  parms) const

Return the python call describing the current process.

◆ run()

virtual bool mgx::Process::run ( )
inlinevirtual

Runs the process.

Returns
false if process failed, true otherwise (FIXME: what kind of fail do we care about?)

Reimplemented in mgx::DivisionAnalysisMulti3D, mgx::TestDivisionPlanes3D, mgx::FlatDivisionPlane3D, mgx::ExportPlaneData, mgx::AngleTwoPlanes, mgx::CreatePlaneFromSelectedVtxs, mgx::MeasureBetweenessCurrentFlow3D, mgx::MeasureBetweenessCurrentFlow, mgx::MeasureBetweenessCentrality3D, mgx::MeasureBetweenessCentrality, mgx::DivisionPlaneHeat, mgx::OrganDivisionSimulation, mgx::CreateJunctionGraphStack, mgx::CreateJunctionGraph, mgx::CellTypeRecognitionAllMeasures, mgx::OutsideCellWall, mgx::CellAxisAngles3D, mgx::DistanceStackToMesh, mgx::CellAxisAngles, mgx::MergeCellsMGXM3D, mgx::LoadTransform, mgx::MeshCircularHistogram, mgx::SaveTransform, mgx::JoinCellsMGX3D, mgx::CellAxisAttrMapImport, mgx::JunctionDistance, mgx::DeleteOutsideMesh, mgx::CellAxisAttrMapExport, mgx::MeasureCellCoord, mgx::HeatMapSmooth, mgx::AnalysisDivPlanes, mgx::MeasureCellDistance, mgx::StackRelabelFromMesh, mgx::DisplayCustomOrientations3D, mgx::HeatMapAllMeasures2D, mgx::SurfaceAnalyzeBezierLine, mgx::DisplayAllPlanes, mgx::MeasureNeighborhoodVariabilityRadius, mgx::HeatMapCellType, mgx::AddNoiseStack, mgx::StackRelabel, mgx::DisplayCellAxisFromTensor, mgx::BezierFromCellFile, mgx::MeasureNeighborhoodNeighbors, mgx::RunAllParentHeat, mgx::DisplayOptimalPlanesSimple, mgx::MeasureDistanceToBezierPlane3D, mgx::SetSignalProcess, mgx::MeasureNeighborhoodAspectRatio, mgx::ShiftStack, mgx::TopHatStack, mgx::HeatAndChangeMap, mgx::MeasureBezierLineCoord3D, mgx::MeasureNeighborhoodPerimeter, mgx::DisplayOptimalPlanes, mgx::GrowthAnalysis3D, mgx::RescaleSignal, mgx::ScaleStack, mgx::CellGraph3D, mgx::DisplayCustomOrientations, mgx::MeasureNeighborhoodArea, mgx::CImgLaplaceStack, mgx::MeasureDistanceToBezier3D, mgx::CellAnalysis3D, mgx::SwitchHeatParent, mgx::SetDivisionPoint, mgx::StackOpenSaveFolder, mgx::MeshOpening, mgx::MeasureStomataArea, mgx::ResizeCanvas, mgx::CustomDirectionsAngle3D, mgx::CImgMedianBlurStack, mgx::Measure3DDistanceToMesh, mgx::LabelledStackComparison, mgx::SelectByHeat, mgx::MeasureCommonNhbrs, mgx::MeshClosing, mgx::DistanceCells, mgx::TakeSnapshot, mgx::ChangeVoxelSize, mgx::Measure3DCellCoord, mgx::CustomDirectionsAngle, mgx::WriteGrowthMapData, mgx::CImgGaussianBlurStack, mgx::CombineAttrMaps, mgx::MeasureVariabilityRadius, mgx::SelectShortWalls, mgx::MeshLabelErosion, mgx::DisplayShortestPath, mgx::Measure3DCellDistanceBezierRing, mgx::CreateCustomDirectionsBezier3D, mgx::QuickSaveFile, mgx::AnalyzeSurface, mgx::ReverseStack, mgx::MeasurePolarCoord, mgx::SelectSpecial, mgx::NormalizeStack, mgx::MeshErosion, mgx::ExamineBadVasculature, mgx::CleanHeatMap, mgx::CreateCustomDirectionsBezierLine3D, mgx::MeshKeepVertices, mgx::MeasureBezierLineCoord, mgx::Measure3DCellDistance, mgx::SwapStacks, mgx::ActualPlaneStack, mgx::ExtendSelectionByNeighbors, mgx::SaveViewFile, mgx::MeshLabelDilation, mgx::DataAnalysisGUS, mgx::HeatMapGrowth, mgx::MeasureBezierCoord, mgx::MeshDeleteSelection, mgx::TrimStackToBezier, mgx::CreateCustomDirectionsBezierLine, mgx::Measure3DOutsideWallAreaPercent, mgx::ResetParents, mgx::SelectParentLabelsT1, mgx::CountSelectedCells, mgx::FillStack3D, mgx::MeshDilation, mgx::FlatDivisionPlane, mgx::MeasureDistanceToBezier, mgx::CreateAttrMap, mgx::DeleteEdge, mgx::SelectParentLabel, mgx::DataAnalysis, mgx::DisplayPCA3D, mgx::TrimStackProcess, mgx::LoadParents, mgx::Measure3DOutsideWallArea, mgx::MeshExport, mgx::ProjectCustomDirections, mgx::AreaSelectedTris, mgx::ApplyMaskLabels, mgx::MeshNormalize, mgx::MeasureMajorAxisTheta, mgx::FillStackToMesh, mgx::NormalizeHeatMap, mgx::SharpenStack, mgx::SplitEdges, mgx::Measure3DVolumeSurfaceRatio, mgx::ImportParentAttrNew, mgx::CreateCustomDirectionsBezier, mgx::AssignCorticalCells, mgx::SelectSharedTriangles, mgx::SaveParents, mgx::MeshLocalMinima, mgx::ScaleHeatMap, mgx::MeasureDistanceToMesh, mgx::MergeVertices, mgx::ApplyMaskToStack, mgx::AssignColumella, mgx::DivisionAnalysisMulti3DOld, mgx::ResetMeshProcess, mgx::SelectByNormal, mgx::ImportParentAttr, mgx::Measure3DSizeCustom, mgx::DiffGaussians, mgx::MeasureAvgRadius, mgx::CustomDirectionsClear, mgx::MeshDiffGaussians, mgx::MeshDeleteValence, mgx::LoadViewFile, mgx::UniqueParentsFromAttr, mgx::MeasureMaxRadius, mgx::ExtendByConnectivity, mgx::CopySwapStacks, mgx::RootDivisionAnalysis, mgx::PCAnalysis3D, mgx::CloseStackLabel, mgx::MeshGaussianBlur, mgx::CustomDirectionsEnforceOrthogonality, mgx::Measure3DSizeZ, mgx::ScaleMesh, mgx::GaussianBlurStack, mgx::LoadAllData, mgx::CellAtlas, mgx::MeasureMinRadius, mgx::CreateParentAttr, mgx::MeshSelectDuplicateCells, mgx::CopyWorkToMain, mgx::MeshSignalGrad, mgx::Measure3DSizeY, mgx::TestDivisionPlanesCellAtlas, mgx::CreateCustomDirectionsSurface, mgx::MeasureNeighbors, mgx::SubdivideBisectMesh3D, mgx::LoadHeatMap, mgx::MergeParentFiles, mgx::MeshSelectWholeLabelExtend, mgx::OpenStackLabel, mgx::FilterStack, mgx::TopologicalCheck, mgx::StackExportByLabel, mgx::SelectDuplicatedNuclei, mgx::Measure3DSizeX, mgx::CopyMainToWork, mgx::MeasureMinorAxis, mgx::AveragePDGs, mgx::DisplayPCA, mgx::ImportCustomDirectionsVector, mgx::SubdivideBisectMesh, mgx::MeshImport, mgx::MeshSelectClip, mgx::ExtendCells, mgx::SetParent, mgx::ProjectCurvature, mgx::DistanceNuclei, mgx::SaveHeatMap, mgx::MeshAutoSegment, mgx::MeasureMajorAxis, mgx::Measure3DSizeRad, mgx::InvertStack, mgx::ImportCustomDirections, mgx::ClipStack, mgx::FillHolesProcess, mgx::LoadCellData, mgx::AdaptiveSubdivideSignalMesh, mgx::EraseAtBorderStack, mgx::MeshUnselectLabel, mgx::RelabelFragments, mgx::LabelNuclei, mgx::CorrectLabelingStack, mgx::MeshSave, mgx::TestDivisionPlanes, mgx::ClearMeshSignal, mgx::DisplayPDGsVertex, mgx::MeasureAspectRatio, mgx::CopyCustomDirections, mgx::Measure3DSizeCirc, mgx::ClearMainStack, mgx::MeshCombineRegions, mgx::DisplayCellData, mgx::ColorGradient, mgx::FlipBezierLine, mgx::MeshSelectValence, mgx::RotateCamera, mgx::AdaptiveSubdivideBorderMesh, mgx::DisplayPCAOld, mgx::ExportJunctionAnglesNew, mgx::RescaleHeatMap, mgx::OpeningStack, mgx::MeshLoad, mgx::FillLabelStack, mgx::CorrectLabeling, mgx::SmoothCustomDirections, mgx::MeshBrightness, mgx::SurfaceFromMGX3D, mgx::MeasureStomatalBending, mgx::Measure3DSizeLong, mgx::ClearWorkStack, mgx::NewBezierRingFromSelected, mgx::DivideCell3DMGX3D, mgx::SaveNeighborhoodData2D, mgx::RelabelCells3D, mgx::SubdivideMesh, mgx::SelectVerticesOfCell, mgx::BinarizeStack, mgx::FindCellWallCenters, mgx::ExportJunctionAngles, mgx::CreateCustomDirectionsHeat, mgx::MeshSelectLabels, mgx::MarkPrim, mgx::MeasureBending, mgx::CopyLabelsToParents, mgx::SmoothMeshSignal, mgx::ConvertToMgx3d, mgx::DeleteHeatRangeLabels, mgx::MeshFromLocalMaxima, mgx::LocalMaximaStack, mgx::ClosingStack, mgx::StackOpen, mgx::Measure3DCoordRad, mgx::NewBezierRing, mgx::BlobDetect, mgx::LabelSelected, mgx::LoopSubdivisionMesh, mgx::PCAnalysis2D, mgx::CreateIntrinsicHeat, mgx::SaveNeighborhoodData, mgx::RestoreCellLabels, mgx::DisplayPDGs, mgx::ClearAttrMap, mgx::MeasurePerimeter, mgx::ExportInternalAngles, mgx::CopyParentsToLabels, mgx::StackBorderFromSegmented, mgx::MeshSelectLabeled, mgx::DisplayCellGraph3D, mgx::DisplayFibrilOrientationsVertex, mgx::LabelMeristem, mgx::ConvertToMgx2d, mgx::VoxelFaceMesh, mgx::ProjectLabelsOnMesh, mgx::BrightenStack, mgx::CollapseBezier, mgx::Measure3DCoordCirc, mgx::ShrinkMesh, mgx::SaveCellData, mgx::LabelCellWalls, mgx::StackExport, mgx::MeasureArea, mgx::MeasureBezierExport, mgx::MeshSelectUnlabeled, mgx::ErodeStack, mgx::ThresholdLabelDelete, mgx::ConvertToMgxc, mgx::CuttingSurfMesh, mgx::SaveCellContourFile, mgx::StackHistogramBezier, mgx::MakeMeshTetraDA, mgx::SaveAttributesCSVExtended, mgx::HeatMapAreaAsymmetry, mgx::GrabLabelsSegment, mgx::MarkMeristem, mgx::DisplayCellGraph2D, mgx::DisplaySignalOrientation3D, mgx::ProjectLabel, mgx::ApplyTransferFunction, mgx::MergeStacks, mgx::Measure3DCoordLong, mgx::CellAtlasFindCells, mgx::FibrilOrientationsVertex, mgx::SmoothMesh, mgx::ComputeDivPlaneAngles, mgx::MeasureSignalTotal, mgx::AnimationLoad, mgx::MeasureBezier, mgx::MedianOfMediansStack, mgx::SetParentExploded, mgx::MeshSelectNewWalls, mgx::MeshInvertSelection, mgx::GrowthDirections, mgx::LoadPlyFileCellGraph, mgx::StackSave, mgx::DetectCellLayers2, mgx::DivisionAnalysisMulti2D, mgx::JoinRegionsSegment, mgx::CellAtlasStack, mgx::ConvertToMgxm, mgx::MeshRelabel, mgx::ConsolidateRegionsNormalized, mgx::StackCircularHistogram, mgx::DisplayCellGraph, mgx::ClearCellAxis, mgx::AnimationSave, mgx::NewBezier, mgx::Measure3DWallArea, mgx::MakeMeshCircleDA, mgx::SignalOrientation3D, mgx::StackImport, mgx::MeasureSignalInterior, mgx::ProjectSignal, mgx::RestoreOriginalMesh, mgx::MarchingCube3D, mgx::ReverseMesh, mgx::DilateStack, mgx::SaveAttributesCSV, mgx::ComputeHeatMap, mgx::SelectBadCells, mgx::CombineStacks, mgx::AutoScaleStack, mgx::MeshUnselect, mgx::DisplayTissueCurvature, mgx::DisplayFibrilOrientations, mgx::DetectCellLayers, mgx::FixBorderTriangles, mgx::SaveGlobalTransform, mgx::HeatMapProliferation, mgx::MedianStack, mgx::ResetDivPlaneData, mgx::AnimationClear, mgx::PythonProcess, mgx::SavePlyFile, mgx::TestDivisionPlanes2D, mgx::LoadCellAxis, mgx::ConsolidateRegions, mgx::MeasureSignalBorder, mgx::SegmentClear, mgx::ViewMeshProcess, mgx::DisplaySignalOrientation, mgx::StackVoxelCount, mgx::ProjectLeafPrimStack, mgx::TranslateByParent, mgx::Measure3DNeighbors, mgx::MeshAddOtherMesh, mgx::SaveBezier, mgx::MeshSelectBadNormals, mgx::AnimationPlay, mgx::AnalyzeCells, mgx::DetectLayers, mgx::PCAnalysis, mgx::ManageAttributes, mgx::AlignCanvas, mgx::StackSwapBytes, mgx::FixMeshCorners, mgx::TransformMesh, mgx::Annihilate, mgx::MeasureSignal, mgx::CorrespondenceJunctions, mgx::SaveCellAxis, mgx::FibrilOrientations, mgx::AverageStack, mgx::MarchingCubeSurface, mgx::SegmentMesh, mgx::EdgeDetectProcess, mgx::TissueCurvature, mgx::StatsTriangleValues, mgx::ComputeVolume, mgx::FilterPlanes, mgx::LoadBezier, mgx::CorrectParents, mgx::AnimationAddKeyFrame, mgx::AutoTrim, mgx::SetCurrentStack, mgx::ExplodeMesh, mgx::Load3DFrom2View, mgx::CopySwapMeshes, mgx::WatershedStack, mgx::Measure3DVolume, mgx::MeshSelectAll, mgx::AnalyzeLeafPrimSurf, mgx::FlatDivisionPlane2D, mgx::SignalOrientation, and mgx::AnalyzeMeristem.

Definition at line 579 of file Process.hpp.

◆ runProcess() [1/2]

bool mgx::Process::runProcess ( const QString &  processName,
QStringList &  parms 
)
throw (
)

Launch a process by name.

Note that exceptions are filtered and converted into an error message and the process returning false.

◆ runProcess() [2/2]

bool mgx::Process::runProcess ( Process proc,
QStringList &  parms 
)
throw (
)

Launch a process with generic arguments.

Note that exceptions are filtered and converted into an error message and the process returning false.

◆ saveView()

bool mgx::Process::saveView ( const QString &  fileName)

Save viewfile.

◆ selectedLabel()

int mgx::Process::selectedLabel ( ) const

Get the current selected label.

◆ setCurrentMeshId()

void mgx::Process::setCurrentMeshId ( int  i)

Change which mesh is current.

◆ setCurrentParms()

bool mgx::Process::setCurrentParms ( )

Set the parms from the GUI.

◆ setCurrentStack()

bool mgx::Process::setCurrentStack ( int  id,
const QString &  store 
)

◆ setCurrentStackId()

void mgx::Process::setCurrentStackId ( int  i)

Change which stack is current.

◆ setErrorMessage()

bool mgx::Process::setErrorMessage ( const QString &  str)

Set an error message that will be displayed if the process returns false.

◆ setGlobalBrightness()

void mgx::Process::setGlobalBrightness ( float  value)

Change the current setting for the global brightness level.

The brightness is clamped to the range [-1;1]

◆ setGlobalContrast()

void mgx::Process::setGlobalContrast ( float  value)

Change the current setting for the global contrast level.

The contrast is clamped to the range [0;2]

◆ setSelectedLabel()

void mgx::Process::setSelectedLabel ( int  label)

Change the current selected label.

◆ setStatus()

bool mgx::Process::setStatus ( const QString &  msg,
bool  alsoPrint = true 
)

Display a message in the status bar

◆ setWarningMessage()

void mgx::Process::setWarningMessage ( const QString &  str)

Set a warning message that will be displayed if the process returns true.

◆ stack()

Stack* mgx::Process::stack ( int  i)

Returns the ith stack, or 0 if there is no such stack.

◆ stackCheck()

bool mgx::Process::stackCheck ( int  checks,
int  which 
)
protected

Check stack properties.

◆ stackCount()

int mgx::Process::stackCount ( ) const

Number of stacks available to the process.

◆ stackError()

QString mgx::Process::stackError ( int  checks,
int  which 
)
protected

Generate a standardised string describing how the stack should be to not generate an error.

◆ stacks() [1/2]

std::pair<stack_iterator, stack_iterator> mgx::Process::stacks ( )

Iterate over all the stacks.

◆ stacks() [2/2]

std::pair<const_stack_iterator, const_stack_iterator> mgx::Process::stacks ( ) const

Iterate over all the stacks.

◆ storeCheck()

bool mgx::Process::storeCheck ( int  checks,
int  which 
)
protected

Check store properties.

◆ storeError()

QString mgx::Process::storeError ( int  checks,
int  which 
)
protected

Generate a standardised string describing how the store should be to not generate an error.

◆ systemCommand()

bool mgx::Process::systemCommand ( int  command,
const QStringList &  parms 
)

Run a system command.

◆ systemCommandGui

void mgx::Process::systemCommandGui ( mgx::Process ,
int  ,
QStringList   
)
signal

◆ systemCommandProcess

void mgx::Process::systemCommandProcess ( mgx::Process ,
int  ,
QStringList   
)
signal

◆ takeSnapshot()

bool mgx::Process::takeSnapshot ( QString  filename,
float  overSampling = 1.0f,
int  width = 0,
int  height = 0,
int  quality = 95,
bool  expand_frustum = false 
)

Save screen shot to a file.

◆ updateState()

bool mgx::Process::updateState ( )

Update the Gui of MorphoGraphX.

◆ updateViewer()

bool mgx::Process::updateViewer ( )

Tell the viewer to redraw.

◆ userCancel()

void mgx::Process::userCancel ( ) const
inline

Throw an exception informing the system that the user canceled the current process.

Definition at line 467 of file Process.hpp.

◆ warningMessage()

QString mgx::Process::warningMessage ( ) const

Get the current warning message.

Friends And Related Function Documentation

◆ Process::CheckState

friend class Process::CheckState
friend

Definition at line 724 of file Process.hpp.

◆ SetupProcess

friend class SetupProcess
friend

Definition at line 222 of file Process.hpp.

Member Data Documentation

◆ LabelColors

std::vector<Colorf>& mgx::Process::LabelColors
static

Definition at line 591 of file Process.hpp.

◆ p

PrivateProcess* mgx::Process::p

Definition at line 748 of file Process.hpp.

◆ processVersion

unsigned int mgx::Process::processVersion
static

Definition at line 224 of file Process.hpp.


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