AAO DRAMA/DRAMA2 C++ Interface
DRAMA C++11 and later interface

◆ Real() [3/5]

template<long int MinVal, long int MaxVal, long int DefaultVal = 0>
drama::gitarg::Real< MinVal, MaxVal, DefaultVal >::Real ( drama::thread::TAction taction,
const sds::Id Id,
const std::string &  Name = "Argument1",
const int  Position = 1,
const double  Default = (double)DefaultVal,
const Flags  flags = Flags::KeepErr 
)
inline

Constructor which constructs the value from an item in an SDS structure, for use in a threaded action.

This overload of the constructor should be used from threaded actions, it will lock access to DRAMA while it is fetching the value to ensure ERS messages from the lower level code are recorded against the action correctly.

The value is fetched from the named item (arg #3) within the SDS structure specified. or the Position (constructor arg #4) item in the
structure if the item named does not exist.

Parameters
tactionThreaded action pointer
IdThe SDS structure.
NameThe name of the item within the structure.
PositionIf the item does not exist by the name, then presume this position.
DefaultThe default value. If not specified, uses template argument "DefaultVal".
flagsWhich GIT Flags to apply. If you specify KeepErr, then an exception is throw if the value in the SDS structure is invalid. If you don't specify KeepErr and and the SDS structure does not contain a value item, then the value is set to the supplied default.

References drama::CreateRunDramaTask(), drama::Default, and drama::gitarg::Real< MinVal, MaxVal, DefaultVal >::Get().