IGLib 1.4
The IGLib base library for development of numerical, technical and business applications.

IG::Num::InputOutputElementDefinition Class Reference

Base class for input or output data element definition for vector functions, approximations, etc. More...

Inheritance diagram for IG::Num::InputOutputElementDefinition:
Collaboration diagram for IG::Num::InputOutputElementDefinition:

List of all members.

Public Member Functions

 InputOutputElementDefinition (int elementIndex, string name, string title, string description)
 Constructor.
 InputOutputElementDefinition (string name)
 Constructor. Element index is unknown, there is no element description.
 InputOutputElementDefinition (string name, string title)
 Constructor. Element index is unknown.
 InputOutputElementDefinition (string name, string title, string description)
 Constructor. Element index is unknown.
void GetDistortedBounds (double DistortionFactor, double RandomFactor, ref double distortedMinimalValue, ref double distrotedMaximalValue)
 Calculates randomly distorted bounds on element values and stores them in the specified variables. Before being randomly changed, input bounds are multiplied by the specified factor.Global random generator is used to generate random componenets of the distorted bounds.
void GetDistortedBounds (double DistortionFactor, double RandomFactor, ref double distortedMinimalValue, ref double distrotedMaximalValue, IRandomGenerator randomGenerator)
 Calculates randomly distorted bounds on element values and stores them in the specified variables. Before being randomly changed, input bounds are multiplied by the specified factor.
override string ToString ()

Static Public Member Functions

static void CopyPlain (InputOutputElementDefinition original, InputOutputElementDefinition copy)
 Copies data from one input/output data element definition to another.
static string GetDefaultInputElementName (int which)
 Returns a default name for the specified input data element.
static string GetDefaultOutputElementName (int which)
 Returns a default name for the specified output data element.
static string GetDefaultInputElementTitle (int which)
 Returns a default title for the specified input data element.
static string GetDefaultOutputElementTitle (int which)
 Returns a default title for the specified output data element.
static string GetDefaultInputElementDescription (int which)
 Returns a default description for the specified input data element.
static string GetDefaultOutputElementDescription (int which)
 Returns a default description for the specified output data element.

Protected Attributes

string _name
string _nameAlt
string _title
string _description
bool _isInput = true
bool _elementindexSpecified = false
int _elementIndex = -1
bool _boundsDefined = false
double _minValue
double _maxValue
bool _targetValueDefined = false
double _targetValue = 0.0
bool _scalingLengthDefined = false
double _scalingLength = 0.0

Properties

virtual string Name [get, set]
 Unique name of the data element described by the current definition. Considered a kind of variable name that distinguishes between data by short names.
virtual string NameAlt [get, set]
 Alternative name of the data element described by the current definition. Used in transformations between different data sets where parameters may be named differently.
virtual string Title [get, set]
 A title describing what given data element represents. Titles can contain special characters and spaces, but should be shorter than descriptions.
virtual string Description [get, set]
 Describes the meaning of a data element used as part of input or output data.
virtual bool IsInput [get, set]
 Flag specifying whether a data element is input or output element.
virtual bool ElementIndexSpecified [get, set]
 Specifies whether element index is specified for the data element described by the current definition.
virtual int ElementIndex [get, set]
 Specifies the index f the element described by the current definition, within the data vextor (either input or output).
virtual bool BoundsDefined [get, set]
 Flag indicating whethe minimal and maximal value are defined for the data element described by the current definition.
virtual double MinimalValue [get, set]
 Minimal value for the data element described by the current definition.
virtual double MaximalValue [get, set]
 Maximal value for the data element described by the current definition.
virtual bool TargetValueDefined [get, set]
 Flag indicating whether target value is defined for the data element described by the current definition.
virtual double TargetValue [get, set]
 Target value of the current element. Used for optimization.
virtual bool ScalingLengthDefined [get, set]
 Flag indicating whether scaling length is defined for the data element described by the current definition.
virtual double ScalingLength [get, set]
 Scaling length, used for optimization and other tasks where scaling of input or output quantities is important.

Detailed Description

Base class for input or output data element definition for vector functions, approximations, etc.

$A Igor Feb11;


Constructor & Destructor Documentation

IG::Num::InputOutputElementDefinition::InputOutputElementDefinition ( int  elementIndex,
string  name,
string  title,
string  description 
) [inline]

Constructor.

Parameters:
elementIndexIndex of the input or output data element specified by the current definision. If less than 0 is specified then it is considered that element index is not known or defined in the current context.
nameElement name. Should comply with conventions for valid variable names in languages C++, C# and Java.
titleShort descriptive title (like name, but can contain spaces and special characters).
descriptionElement description. Can be an arbvitrary string.
IG::Num::InputOutputElementDefinition::InputOutputElementDefinition ( string  name) [inline]

Constructor. Element index is unknown, there is no element description.

Parameters:
nameElement name. Should comply with conventions for valid variable names in languages C++, C# and Java.
IG::Num::InputOutputElementDefinition::InputOutputElementDefinition ( string  name,
string  title 
) [inline]

Constructor. Element index is unknown.

Parameters:
elementIndexIndex of the input or output data element specified by the current definision. If less than 0 is specified then it is considered that element index is not known or defined in the current context.
nameElement name. Should comply with conventions for valid variable names in languages C++, C# and Java.
titleShort descriptive title (like name, but can contain spaces and special characters).
IG::Num::InputOutputElementDefinition::InputOutputElementDefinition ( string  name,
string  title,
string  description 
) [inline]

Constructor. Element index is unknown.

Parameters:
elementIndexIndex of the input or output data element specified by the current definision. If less than 0 is specified then it is considered that element index is not known or defined in the current context.
nameElement name. Should comply with conventions for valid variable names in languages C++, C# and Java.
titleShort descriptive title (like name, but can contain spaces and special characters).
descriptionElement description. Can be an arbitrary string.

Member Function Documentation

static void IG::Num::InputOutputElementDefinition::CopyPlain ( InputOutputElementDefinition  original,
InputOutputElementDefinition  copy 
) [inline, static]

Copies data from one input/output data element definition to another.

Parameters:
originalSource object that data is copied from.
copyObject to which data is copied.

Operation is performed only if both sorce and destination objects are non-null.

void IG::Num::InputOutputElementDefinition::GetDistortedBounds ( double  DistortionFactor,
double  RandomFactor,
ref double  distortedMinimalValue,
ref double  distrotedMaximalValue 
) [inline]

Calculates randomly distorted bounds on element values and stores them in the specified variables. Before being randomly changed, input bounds are multiplied by the specified factor.Global random generator is used to generate random componenets of the distorted bounds.

Parameters:
DistortionFactorFactor by which interval bounds are multiplied before randomly distorted.
RandomFactorFactor that specifies level of randomness, from 0 (no randomness in setting distorted bounds) to 0.4 inclusively. Factor 0.5 would mean that amplitude of additional random distortion is half of the length of the interval [min, max].
distortedMinimalValueVariable where distorted lower bound is stored.
distrotedMaximalValueVariable where distorted upper bound is stored.
void IG::Num::InputOutputElementDefinition::GetDistortedBounds ( double  DistortionFactor,
double  RandomFactor,
ref double  distortedMinimalValue,
ref double  distrotedMaximalValue,
IRandomGenerator  randomGenerator 
) [inline]

Calculates randomly distorted bounds on element values and stores them in the specified variables. Before being randomly changed, input bounds are multiplied by the specified factor.

Parameters:
DistortionFactorFactor by which interval bounds are multiplied before randomly distorted.
RandomFactorFactor that specifies level of randomness, from 0 (no randomness in setting distorted bounds) to 0.4 inclusively. Factor 0.5 would mean that amplitude of additional random distortion is half of the length of the interval [min, max].
distortedMinimalValueVariable where distorted lower bound is stored.
distrotedMaximalValueVariable where distorted upper bound is stored.
randomGeneratorRandom generator used to randomly generate distorted bounds.
static string IG::Num::InputOutputElementDefinition::GetDefaultInputElementName ( int  which) [inline, static]

Returns a default name for the specified input data element.

Parameters:
whichIndex of the element (zero-based).
static string IG::Num::InputOutputElementDefinition::GetDefaultOutputElementName ( int  which) [inline, static]

Returns a default name for the specified output data element.

Parameters:
whichIndex of the element (zero-based).
static string IG::Num::InputOutputElementDefinition::GetDefaultInputElementTitle ( int  which) [inline, static]

Returns a default title for the specified input data element.

Parameters:
whichIndex of the element (zero-based).
static string IG::Num::InputOutputElementDefinition::GetDefaultOutputElementTitle ( int  which) [inline, static]

Returns a default title for the specified output data element.

Parameters:
whichIndex of the element (zero-based).
static string IG::Num::InputOutputElementDefinition::GetDefaultInputElementDescription ( int  which) [inline, static]

Returns a default description for the specified input data element.

Parameters:
whichIndex of the element (zero-based).
static string IG::Num::InputOutputElementDefinition::GetDefaultOutputElementDescription ( int  which) [inline, static]

Returns a default description for the specified output data element.

Parameters:
whichIndex of the element (zero-based).
override string IG::Num::InputOutputElementDefinition::ToString ( ) [inline]

Member Data Documentation


Property Documentation

virtual string IG::Num::InputOutputElementDefinition::Name [get, set]

Unique name of the data element described by the current definition. Considered a kind of variable name that distinguishes between data by short names.

There is an agreement that element names should follow conventions for valid variable names in programming languages C++, C# and Java.

virtual string IG::Num::InputOutputElementDefinition::NameAlt [get, set]

Alternative name of the data element described by the current definition. Used in transformations between different data sets where parameters may be named differently.

There is an agreement that element names should follow conventions for valid variable names in programming languages C++, C# and Java.

virtual string IG::Num::InputOutputElementDefinition::Title [get, set]

A title describing what given data element represents. Titles can contain special characters and spaces, but should be shorter than descriptions.

virtual string IG::Num::InputOutputElementDefinition::Description [get, set]

Describes the meaning of a data element used as part of input or output data.

virtual bool IG::Num::InputOutputElementDefinition::IsInput [get, set]

Flag specifying whether a data element is input or output element.

virtual bool IG::Num::InputOutputElementDefinition::ElementIndexSpecified [get, set]

Specifies whether element index is specified for the data element described by the current definition.

remarks>If not specified, then by agreement the ElementIndex is set to -1. Getter of this property automatically set ElementIndex to -1 if the property is set to false.

virtual int IG::Num::InputOutputElementDefinition::ElementIndex [get, set]

Specifies the index f the element described by the current definition, within the data vextor (either input or output).

remarks>If not specified, then by agreement the ElementIndex is set to -1. Getter of this property automatically set ElementIndexSpecified flag to false if the property is set to less than 0, and to true otherwise.

virtual bool IG::Num::InputOutputElementDefinition::BoundsDefined [get, set]

Flag indicating whethe minimal and maximal value are defined for the data element described by the current definition.

virtual double IG::Num::InputOutputElementDefinition::MinimalValue [get, set]

Minimal value for the data element described by the current definition.

virtual double IG::Num::InputOutputElementDefinition::MaximalValue [get, set]

Maximal value for the data element described by the current definition.

virtual bool IG::Num::InputOutputElementDefinition::TargetValueDefined [get, set]

Flag indicating whether target value is defined for the data element described by the current definition.

virtual double IG::Num::InputOutputElementDefinition::TargetValue [get, set]

Target value of the current element. Used for optimization.

virtual bool IG::Num::InputOutputElementDefinition::ScalingLengthDefined [get, set]

Flag indicating whether scaling length is defined for the data element described by the current definition.

virtual double IG::Num::InputOutputElementDefinition::ScalingLength [get, set]

Scaling length, used for optimization and other tasks where scaling of input or output quantities is important.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Enumerations Properties Events