Seg3D  2.4
Seg3D is a free volume segmentation and processing tool developed by the NIH Center for Integrative Biomedical Computing at the University of Utah Scientific Computing and Imaging (SCI) Institute.
Public Types | Public Member Functions | Public Attributes | List of all members
Core::ArrayMathEngine Class Reference
Inheritance diagram for Core::ArrayMathEngine:
Core::Parser Core::ArrayMathInterpreter

Public Types

typedef boost::signals2::signal< void(double) > update_progress_signal_type
 

Public Member Functions

bool add_input_data_block (std::string name, DataBlockHandle data_block, std::string &error)
 Generate input arrays.
 
bool add_input_mask_data_block (std::string name, MaskDataBlockHandle mask_data_block, std::string &error)
 
bool add_output_data_block (std::string name, size_t nx, size_t ny, size_t nz, Core::DataType type, std::string &error)
 
bool add_expressions (std::string &expressions)
 Setup the expression.
 
bool parse_and_validate (std::string &error)
 Parse and validate the inputs/outputs/expression.
 
bool run (std::string &error)
 Run the expressions in parallel.
 
bool get_data_block (std::string name, DataBlockHandle &data_block)
 Extract handles to the results.
 
void clear ()
 Clean up the engine.
 
- Public Member Functions inherited from Core::Parser
bool parse (ParserProgramHandle &program, std::string expressions, std::string &error)
 
bool add_input_variable (ParserProgramHandle &program, std::string name, std::string type, int flags=0)
 
bool add_output_variable (ParserProgramHandle &program, std::string name, std::string type="U", int flags=0)
 
bool add_output_variable (ParserProgramHandle &program, std::string name)
 
bool get_input_variable_type (ParserProgramHandle &program, std::string name, std::string &type)
 
bool get_output_variable_type (ParserProgramHandle &program, std::string name, std::string &type)
 
bool get_input_variable_type (ParserProgramHandle &program, std::string name, std::string &type, int &flags)
 
bool get_output_variable_type (ParserProgramHandle &program, std::string name, std::string &type, int &flags)
 
bool validate (ParserProgramHandle &program, ParserFunctionCatalogHandle &catalog, std::string &error)
 
bool optimize (ParserProgramHandle &program, std::string &error)
 
void add_binary_operator (std::string op, std::string funname, int priority)
 
void add_unary_pre_operator (std::string op, std::string funname)
 
void add_unary_post_operator (std::string op, std::string funname)
 
void add_numerical_constant (std::string name, float val)
 
- Public Member Functions inherited from Core::ArrayMathInterpreter
bool create_program (ArrayMathProgramHandle &mprogram, std::string &error)
 Step 0 : create program variable.
 
bool add_data_block_source (ArrayMathProgramHandle &pprogram, std::string &name, DataBlockHandle data_block, std::string &error)
 Step 1: add sources and sinks.
 
bool add_mask_data_block_source (ArrayMathProgramHandle &pprogram, std::string &name, MaskDataBlockHandle mask_data_block, std::string &error)
 
bool add_data_block_sink (ArrayMathProgramHandle &pprogram, std::string &name, DataBlockHandle data_block, std::string &error)
 
bool translate (ParserProgramHandle &pprogram, ArrayMathProgramHandle &mprogram, std::string &error)
 Step 2: translate code and generate executable code. More...
 
bool set_array_size (ArrayMathProgramHandle &mprogram, size_type array_size)
 Step 3: Set the array size.
 
bool run (ArrayMathProgramHandle &mprogram, std::string &error)
 Step 4: Run the code.
 

Public Attributes

update_progress_signal_type update_progress_signal_
 

Member Data Documentation

update_progress_signal_type Core::ArrayMathEngine::update_progress_signal_

When new information on progress is available this signal is triggered. If this signal is triggered it should end with a value 1.0 indicating that progress reporting has finised. Progress is measured between 0.0 and 1.0.


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