Abstract base class for B-spline interpolation boundary conditions. More...
#include <mia/core/boundary_conditions.hh>
| Public Types | |
| typedef CSplineBoundaryCondition | plugin_data | 
| helper typedef for plug-in handling  More... | |
| typedef CSplineBoundaryCondition | plugin_type | 
| helper typedef for plug-in handling  More... | |
| typedef std::unique_ptr< CSplineBoundaryCondition > | Pointer | 
| pointer type to this boundary condition  More... | |
|  Public Types inherited from CPropertyFlagHolder | |
| typedef std::set< const char * > | Set | 
| define the type of the set of flags  More... | |
| Public Member Functions | |
| bool | apply (CSplineKernel::VIndex &index, CSplineKernel::VWeight &weights) const | 
| virtual CSplineBoundaryCondition * | clone () const __attribute__((warn_unused_result))=0 | 
| CSplineBoundaryCondition () | |
| CSplineBoundaryCondition (const CSplineBoundaryCondition &)=delete | |
| CSplineBoundaryCondition (int width) | |
| template<typename T > | |
| void | filter_line (std::vector< T > &coeff, const std::vector< double > &poles) const | 
| void | filter_line (std::vector< double > &coeff, const std::vector< double > &poles) const | 
| int | get_width () const | 
| CSplineBoundaryCondition & | operator= (const CSplineBoundaryCondition &)=delete | 
| void | set_width (int width) | 
| template<typename T > | |
| void | template_filter_line (std::vector< T > &coeff, const std::vector< double > &poles) const | 
|  Public Member Functions inherited from CProductBase | |
| const char * | get_init_string () const | 
| void | set_init_string (const char *init) | 
| void | set_module (PPluginModule module) | 
|  Public Member Functions inherited from CPropertyFlagHolder | |
| void | add (const char *property) | 
| Set | get_missing_properties (const CPropertyFlagHolder &testset) const | 
| bool | has (const char *property) const | 
| bool | has_all_in (const CPropertyFlagHolder &testset) const | 
| virtual | ~CPropertyFlagHolder () | 
| Static Public Attributes | |
| static const char *const | data_descr | 
| data portion of the plugin search path  More... | |
| static const char *const | type_descr | 
| type portion of the plugin search path  More... | |
Abstract base class for B-spline interpolation boundary conditions.
This class is the abstract base class for B-spline interpolation boundary conditions.
The actual boundary conditions are implemented as plug-ins and instances are created by calling produce_spline_boundary_condition.
Definition at line 52 of file boundary_conditions.hh.
helper typedef for plug-in handling
Definition at line 56 of file boundary_conditions.hh.
helper typedef for plug-in handling
Definition at line 59 of file boundary_conditions.hh.
| typedef std::unique_ptr<CSplineBoundaryCondition> CSplineBoundaryCondition::Pointer | 
pointer type to this boundary condition
Definition at line 69 of file boundary_conditions.hh.
| CSplineBoundaryCondition::CSplineBoundaryCondition | ( | ) | 
| 
 | delete | 
Delete copy operations
| CSplineBoundaryCondition::CSplineBoundaryCondition | ( | int | width | ) | 
Constructor for the boundary conditions.
| width | size of the coefficent domain | 
| bool CSplineBoundaryCondition::apply | ( | CSplineKernel::VIndex & | index, | 
| CSplineKernel::VWeight & | weights | ||
| ) | const | 
Apply the boundary conditions
| index | - indices into the coeffisicnt domain will be changed to fit domain | 
| weights | - according weights | 
| 
 | pure virtual | 
| void CSplineBoundaryCondition::filter_line | ( | std::vector< T > & | coeff, | 
| const std::vector< double > & | poles | ||
| ) | const | 
Prefiltering function to convert a vector of input data to spline coefficients
| T | must either be a scalar type or an array of scalar data types whose elements can be accessed by using the operator[]. This restriction is currently necessary to allow a dynamic polymorphic implementation of the pre-filtering step needed for different boundary condition models. | 
| [in,out] | coeff | vector of function values that will be converted to spline coefficients | 
| poles | the poles of the B-spline the coefficients are created for | 
Definition at line 277 of file boundary_conditions.hh.
Referenced by produce_spline_boundary_condition().
| void CSplineBoundaryCondition::filter_line | ( | std::vector< double > & | coeff, | 
| const std::vector< double > & | poles | ||
| ) | const | 
Prefiltering function to convert a vector of double valued input data to spline coefficients This is the actual work routine that will be called by the other filter_line functions after type conversion and decomposition has been executed
| [in,out] | coeff | vector of function values that will be converted to spline coefficients | 
| poles | the poles of the B-spline the coefficients are created for | 
| 
 | inline | 
Definition at line 104 of file boundary_conditions.hh.
| 
 | delete | 
| void CSplineBoundaryCondition::set_width | ( | int | width | ) | 
(re-)set the width of the supported index range
| width | new width | 
| void CSplineBoundaryCondition::template_filter_line | ( | std::vector< T > & | coeff, | 
| const std::vector< double > & | poles | ||
| ) | const | 
Prefiltering function to convert a vector of scalar valued input data to spline coefficients.
| T | a scalar type. | 
| [in,out] | coeff | vector of function values that will be converted to spline coefficients | 
| poles | the poles of the B-spline the coefficients are created for | 
Definition at line 285 of file boundary_conditions.hh.
References NS_MIA_END.
Referenced by produce_spline_boundary_condition().
| 
 | static | 
data portion of the plugin search path
Definition at line 65 of file boundary_conditions.hh.
| 
 | static | 
type portion of the plugin search path
Definition at line 62 of file boundary_conditions.hh.