PCL
pcl::MetaReal Class Referenceabstract

A formal description of a real process parameter. More...

#include <MetaParameter.h>

+ Inheritance diagram for pcl::MetaReal:

Public Member Functions

 MetaReal (MetaProcess *P)
 
 MetaReal (MetaTable *T)
 
 ~MetaReal () noexcept(false) override
 
virtual IsoString Id () const override=0
 
bool IsReal () const override
 
virtual int Precision () const
 
virtual bool ScientificNotation () const
 
- Public Member Functions inherited from pcl::MetaNumeric
 MetaNumeric (MetaProcess *P)
 
 MetaNumeric (MetaTable *T)
 
 ~MetaNumeric () noexcept(false) override
 
virtual double DefaultValue () const
 
virtual bool IsInteger () const
 
bool IsNumeric () const override
 
virtual double MaximumValue () const
 
virtual double MinimumValue () const
 
- Public Member Functions inherited from pcl::MetaParameter
 MetaParameter (MetaProcess *P)
 
 MetaParameter (MetaTable *T)
 
 ~MetaParameter () noexcept(false) override
 
virtual IsoString Aliases () const
 
virtual String Comment () const
 
virtual String Description () const
 
virtual bool IsBlock () const
 
virtual bool IsBoolean () const
 
virtual bool IsEnumeration () const
 
virtual bool IsReadOnly () const
 
virtual bool IsRequired () const
 
virtual bool IsString () const
 
virtual bool IsTable () const
 
virtual bool IsVariableLength () const
 
virtual bool NeedsUnlocking () const
 
virtual bool NeedsValidation () const
 
- Public Member Functions inherited from pcl::MetaObject
 MetaObject (const MetaObject &)=delete
 
 MetaObject (MetaObject &&x)=delete
 
 MetaObject (MetaObject *parent)
 
virtual ~MetaObject () noexcept(false)
 
size_type Length () const
 
MetaObjectoperator= (const MetaObject &)=delete
 
MetaObjectoperator= (MetaObject &&x)=delete
 
const MetaObjectoperator[] (size_type i) const
 
MetaObjectParent ()
 
const MetaObjectParent () const
 

Additional Inherited Members

- Public Types inherited from pcl::MetaObject
using children_list = IndirectArray< MetaObject >
 

Detailed Description

Real process parameters can be 32 and 64-bit IEEE 754 floating point values. This leads to the MetaFloat and MetaDouble real process parameter classes, respectively.

Definition at line 1107 of file MetaParameter.h.

Constructor & Destructor Documentation

◆ MetaReal() [1/2]

pcl::MetaReal::MetaReal ( MetaProcess P)
inline

Constructs a metaparameter representing a real parameter of the specified process class *P.

Definition at line 1115 of file MetaParameter.h.

◆ MetaReal() [2/2]

pcl::MetaReal::MetaReal ( MetaTable T)
inline

Constructs a metaparameter representing a real value in a column of a table process parameter represented by the metatable *T. The new metaparameter is appended to the list of existing columns in the metatable *T.

Definition at line 1126 of file MetaParameter.h.

◆ ~MetaReal()

pcl::MetaReal::~MetaReal ( )
inlineoverridenoexcept

Destroys a MetaReal object.

Definition at line 1134 of file MetaParameter.h.

Member Function Documentation

◆ Id()

virtual IsoString pcl::MetaReal::Id ( ) const
overridepure virtual

Returns the identifier of the process parameter that this metaparameter represents.

Each process parameter must have a valid, unique (within its parent process) C identifier.

See also
Aliases()

Implements pcl::MetaNumeric.

Implemented in pcl::MetaDouble, and pcl::MetaFloat.

◆ IsReal()

bool pcl::MetaReal::IsReal ( ) const
inlineoverridevirtual

Returns true iff this metaparameter represents a real (floating-point) process parameter. Real process parameters are represented as subclasses of MetaReal.

Reimplemented from pcl::MetaNumeric.

Definition at line 1140 of file MetaParameter.h.

◆ Precision()

virtual int pcl::MetaReal::Precision ( ) const
inlinevirtual

Returns the number of decimal digits that should be used to represent actual values of the real process parameter represented by this metaparameter.

The returned number of decimal digits will be used for literal representations of the represented parameter, especially in generated scripts. Good examples are automatically generated scripts on the Processing History and ProcessContainer windows in the PixInsight core application.

The returned value should be in the range from -1 to 16. A maximum of 7 decimal digits will be used for 32-bit real process parameters, and a maximum of 16 decimal digits for 64-bit real process parameters, even if this function returns a larger value.

If a value ≥ 0 is returned, real literal representations are always rounded to the nearest value with the specified amount of decimal digits. If this function returns zero, output values corresponding to this parameter will always be rounded to the nearest integer.

If this function returns a negative integer, literal representations will use the standard printf's g-format. In this format, numerical values are represented in a compact fashion, with automatic selection of exponential or fixed representations, depending on the value's magnitude and fractional accuracy.

Note
The default implementation of this function returns -1. This means that printf's g-format is used by default.

Definition at line 1175 of file MetaParameter.h.

◆ ScientificNotation()

virtual bool pcl::MetaReal::ScientificNotation ( ) const
inlinevirtual

Returns true iff actual values of this real process parameter must be represented using scientific notation (printf's e-format).

If this function returns false, actual parameter values of this parameter will be represented using ordinary decimal notation (printf's f-format), unless the Precision() member function returns -1, in which case the automatic g-format will always be used.

Note
The default implementation of this function returns false. This means that the ordinary decimal notation (printf's f-format) is used to represent real parameters by default.

Definition at line 1193 of file MetaParameter.h.


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