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.
All Classes Namespaces Functions Variables Typedefs Enumerator Friends
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: