43 #ifndef vtkStatisticsAlgorithm_h
44 #define vtkStatisticsAlgorithm_h
46 #include "vtkFiltersStatisticsModule.h"
50 #include <token/Singletons.h>
52 VTK_ABI_NAMESPACE_BEGIN
135 vtkSetMacro(LearnOption,
bool);
136 vtkGetMacro(LearnOption,
bool);
137 vtkBooleanMacro(LearnOption,
bool);
144 vtkSetMacro(DeriveOption,
bool);
145 vtkGetMacro(DeriveOption,
bool);
146 vtkBooleanMacro(DeriveOption,
bool);
153 vtkSetMacro(AssessOption,
bool);
154 vtkGetMacro(AssessOption,
bool);
155 vtkBooleanMacro(AssessOption,
bool);
162 vtkSetMacro(TestOption,
bool);
163 vtkGetMacro(TestOption,
bool);
164 vtkBooleanMacro(TestOption,
bool);
171 vtkSetMacro(NumberOfPrimaryTables,
vtkIdType);
172 vtkGetMacro(NumberOfPrimaryTables,
vtkIdType);
221 virtual void SetColumnStatus(
const char* namCol,
int status);
226 virtual void ResetAllColumnStates();
232 virtual int RequestSelectedColumns();
237 virtual void ResetRequests();
277 void AddColumn(
const char* namCol);
289 void AddColumnPair(
const char* namColX,
const char* namColY);
328 vtkSetMacro(GhostsToSkip,
unsigned char);
329 vtkGetMacro(GhostsToSkip,
unsigned char);
342 vtkSetMacro(SkipInvalidValues,
bool);
343 vtkGetMacro(SkipInvalidValues,
bool);
344 vtkBooleanMacro(SkipInvalidValues,
bool);
366 virtual std::string GetAlgorithmParameters()
const;
392 template <
typename Algorithm>
409 virtual bool ConfigureFromAlgorithmParameters(
const std::string& algorithmParameters);
427 virtual void AppendAlgorithmParameters(
std::string& algorithmParameters)
const;
443 virtual std::size_t ConsumeNextAlgorithmParameter(
479 virtual void SelectAssessFunctor(
502 static std::size_t ConsumeStringTuple(
const std::string&
source, std::vector<std::string>& tuple);
516 static std::size_t ConsumeDoubleTuple(
const std::string&
source, std::vector<double>& tuple);
517 static std::size_t ConsumeDoubleTuples(
519 static std::size_t ConsumeStringToDoublesMap(
545 VTK_ABI_NAMESPACE_END
static void RegisterAlgorithm()
Register a subclass of this algorithm.
std::unordered_map< vtkStringToken, AlgorithmConstructor > AlgorithmConstructorMap
Return a new instance of a subclass named and configured by the algorithmParameters.
Wrapper around std::string to keep symbols short.
A base class for a functor that assesses data.
vtkIdType NumberOfPrimaryTables
vtkStatisticsAlgorithmPrivate * Internals
a base class for statistical modeling of other data
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
An array holding vtkVariants.
static AlgorithmConstructorMap & GetConstructorMap()
Return a map of registered algorithm types.
maintain an unordered list of data objects
InputPorts
enumeration values to specify input port types
virtual void SetInputModelConnection(vtkAlgorithmOutput *model)
A convenience method for setting the input model connection (if one is expected or allowed)...
a vtkAbstractArray subclass for strings
Hold a reference to a vtkObjectBase instance.
OutputIndices
enumeration values to specify output port types
static vtkSmartPointer< T > New()
Create an instance of a VTK object.
Port 1 is for learn parameters (initial guesses, etc.)
unsigned char GhostsToSkip
A type representing the union of many types.
Proxy object to connect input/output ports.
dynamic, self-adjusting array of double
Base class for statistics algorithms.
virtual void SetLearnOptionParameterConnection(vtkAlgorithmOutput *params)
A convenience method for setting learn input parameters (if one is expected or allowed).
a simple class to control print indentation
int Test(int argc, char *argv[], const char *dfile, const InitializationCallback &initCallback)
std::function< vtkSmartPointer< vtkStatisticsAlgorithm >()> AlgorithmConstructor
Return a new instance of a subclass named and configured by the algorithmParameters.
virtual void SetInputConnection(int port, vtkAlgorithmOutput *input)
Set the connection for the given input port index.
Represent a string by its integer hash.
void SetInputData(vtkDataObject *obj)
Assign a data object as input.
boost::graph_traits< vtkGraph * >::vertex_descriptor source(boost::graph_traits< vtkGraph * >::edge_descriptor e, vtkGraph *)
int FillInputPortInformation(int port, vtkInformation *info) override
Fill the input port information objects for this algorithm.
A table, which contains similar-typed columns of data.
Allocate and hold a VTK object.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
Superclass for algorithms that produce only vtkTables as output.
virtual void SetInputModel(vtkDataObject *model)
A convenience method for setting the input model (if one is expected or allowed). ...
virtual void SetLearnOptionParameters(vtkDataObject *params)
A convenience method for setting learn input parameters (if one is expected or allowed).
vtkStringArray * AssessNames
general representation of visualization data
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
virtual int GetMaximumNumberOfColumnsPerRequest() const
Provide a limit on the number of columns per request for this algorithm subclass. ...
Port 2 is for a priori models.