A rule entry in the definition of Ascii signal format. More...
#include <AsciiSignalFormatRule.h>
Public Member Functions | |
| AsciiSignalFormatRule () | |
| AsciiSignalFormatRule (const AsciiSignalFormatRule &o) | |
| int | channel () const |
| bool | constant () const |
| const MetaDataIndex & | data () const |
| double | factor () const |
| bool | mandatory () const |
| QString | pattern () const |
| int | patternIndex () const |
| void | setChannel (int c) |
| void | setConstant (bool c) |
| void | setData (const MetaDataIndex &d) |
| void | setFactor (double f) |
| void | setMandatory (bool m) |
| void | setPattern (QString p) |
| void | setPatternIndex (int i) |
| void | setValue (QVariant v) |
| QVariant | value () const |
| virtual const QString & | xml_tagName () const |
Static Public Attributes | |
| static const QString | xmlRuleTag = "Rule" |
Protected Member Functions | |
| virtual XMLMember | xml_member (XML_MEMBER_ARGS) |
| virtual bool | xml_setProperty (XML_SETPROPERTY_ARGS) |
| virtual void | xml_writeProperties (XML_WRITEPROPERTIES_ARGS) const |
A rule entry in the definition of Ascii signal format.
Full description of class still missing
Constructs a basic rule: for all channels, not constant, mandatory, empty pattern, pattern index set to 1, not multiplication factor.
{
_channel=-1; // Default to all channels
_constant=false;
_mandatory=true;
_patternIndex=1;
_factor=1.0;
}
Copy constructor
: XMLClass() { _channel=o._channel; _data=o._data; _constant=o._constant; _mandatory=o._mandatory; _pattern=o._pattern; _patternIndex=o._patternIndex; _value=o._value; _factor=o._factor; }
| int GeopsyCore::AsciiSignalFormatRule::channel | ( | ) | const [inline] |
Referenced by GeopsyCore::AsciiSignalFormat::assign(), and GeopsyGui::AsciiSignalRulesItem::data().
{return _channel;}
| bool GeopsyCore::AsciiSignalFormatRule::constant | ( | ) | const [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::data(), GeopsyGui::AsciiSignalRulesItem::flags(), and GeopsyCore::AsciiSignalFormat::parseHeader().
{return _constant;}
| const MetaDataIndex& GeopsyCore::AsciiSignalFormatRule::data | ( | ) | const [inline] |
| double GeopsyCore::AsciiSignalFormatRule::factor | ( | ) | const [inline] |
Referenced by GeopsyCore::AsciiSignalFormat::assign(), GeopsyGui::AsciiSignalRulesItem::data(), and GeopsyCore::AsciiSignalFormat::t0().
{return _factor;}
| bool GeopsyCore::AsciiSignalFormatRule::mandatory | ( | ) | const [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::data(), and GeopsyCore::AsciiSignalFormat::parseHeader().
{return _mandatory;}
| QString GeopsyCore::AsciiSignalFormatRule::pattern | ( | ) | const [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::data(), and GeopsyCore::AsciiSignalFormat::parseHeader().
{return _pattern;}
| int GeopsyCore::AsciiSignalFormatRule::patternIndex | ( | ) | const [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::data(), and GeopsyCore::AsciiSignalFormat::parseHeader().
{return _patternIndex;}
| void GeopsyCore::AsciiSignalFormatRule::setChannel | ( | int | c | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData().
{_channel=c;}
| void GeopsyCore::AsciiSignalFormatRule::setConstant | ( | bool | c | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData().
{_constant=c;}
| void GeopsyCore::AsciiSignalFormatRule::setData | ( | const MetaDataIndex & | d | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData(), and TitanProcess::TitanProcess().
{_data=d;}
| void GeopsyCore::AsciiSignalFormatRule::setFactor | ( | double | f | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData().
{_factor=f;}
| void GeopsyCore::AsciiSignalFormatRule::setMandatory | ( | bool | m | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData().
{_mandatory=m;}
| void GeopsyCore::AsciiSignalFormatRule::setPattern | ( | QString | p | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData(), and TitanProcess::TitanProcess().
{_pattern=p;}
| void GeopsyCore::AsciiSignalFormatRule::setPatternIndex | ( | int | i | ) | [inline] |
Referenced by GeopsyGui::AsciiSignalRulesItem::setData().
{if(_patternIndex<0x40000000) _patternIndex=i;}
| void GeopsyCore::AsciiSignalFormatRule::setValue | ( | QVariant | v | ) | [inline] |
Referenced by GeopsyCore::AsciiSignalFormat::parseHeader(), and GeopsyGui::AsciiSignalRulesItem::setData().
{_value=v;}
| QVariant GeopsyCore::AsciiSignalFormatRule::value | ( | ) | const [inline] |
Referenced by GeopsyCore::AsciiSignalFormat::assign(), GeopsyGui::AsciiSignalRulesItem::data(), GeopsyCore::AsciiSignalFormat::t0(), and GeopsyCore::AsciiSignalFormat::timeReference().
{return _value;}
| XMLMember GeopsyCore::AsciiSignalFormatRule::xml_member | ( | XML_MEMBER_ARGS | ) | [protected, virtual] |
Re-implement this function to offer XML restore (children and properties) support to your class.
From tag and map (with contains the attibute value) return a unique identifier under the format of a XMLMember. XMLMember is initialized with 3 types of contructors:
Map of attributes can be inspected in this way (can be achived also in xml_setProperty()):
static const QString tmp("childrenName"); XMLRestoreAttributeIterator it=map.find(tmp); if(it!=map.end()) { // found attribute "childrenName" }
If the map of attributes is not used:
Q_UNUSED(attributes);
if(tag=="x1") return XMLMember(0);
else if(tag=="y1") return XMLMember(1);
else if(tag=="x2") return XMLMember(2);
else if(tag=="y2") return XMLMember(3);
else return XMLMember(XMLMember::Unknown);
Arithmetic operations + and - apply to XMLMember to avoid confusion of property id numbers between inherited objects. Offset 3 corresponds to the number of properties defined in this object.
if(tag=="anInteger") return XMLMember(0); else if(tag=="aString") return XMLMember(1); else if(tag=="aDouble") return XMLMember(2); return AbstractLine::xml_member(tag, attributes, context)+3;
For the arguments of this function use Macro XML_MEMBER_ARGS.
Reimplemented from QGpCoreTools::XMLClass.
References TRACE.
{
TRACE;
Q_UNUSED(context);
Q_UNUSED(attributes);
if(tag=="channel" ) return XMLMember(0);
else if(tag=="data" ) return XMLMember(1);
else if(tag=="pattern" ) return XMLMember(2);
else if(tag=="patternIndex" ) return XMLMember(3);
else if(tag=="constant" ) return XMLMember(4);
else if(tag=="mandatory" ) return XMLMember(5);
else if(tag=="value" ) return XMLMember(6);
else if(tag=="factor" ) return XMLMember(7);
else return XMLMember(XMLMember::Unknown);
}
| bool GeopsyCore::AsciiSignalFormatRule::xml_setProperty | ( | XML_SETPROPERTY_ARGS | ) | [protected, virtual] |
Re-implement this function to offer XML restore properties support to your class.
From memberID set the corresponding property with value content. The map of attributes is given as a supplementary information (not useful in all cases).
For a general case:
Q_UNUSED(attributes); double val=content.toDouble(); switch (memberID) { case 0: _x1=val; return true; case 1: _y1=val; return true; case 2: _x2=val; return true; case 3: _y2=val; return true; default: return false; }
For classes inheriting other classes (see also xml_member())
switch (memberID) { case 0: _anInteger=content.toString(); return true; case 1: _aString=content.toInt(); return true; case 2: _aDouble=content.toDouble(); return true; default: return AbstractLine::xml_setProperty(memberID-3, map, content);
For the arguments of this function use Macro XML_SETPROPERTY_ARGS.
Reimplemented from QGpCoreTools::XMLClass.
References GeopsyCore::MetaDataFactory::index(), GeopsyCore::MetaDataFactory::instance(), GeopsyCore::MetaDataIndex::setIndex(), and TRACE.
{
TRACE;
Q_UNUSED(tag);
Q_UNUSED(context);
switch (memberID) {
case 0: _channel=content.toInt(); return true;
case 1: {
_data=MetaDataFactory::instance()->index(content.toString());
XMLRestoreAttributeIterator it=attributes.find(indexKey);
if(it!=attributes.end()) {
_data.setIndex(it.value().toString());
}
return true;
}
case 2: _pattern=content.toString(); return true;
case 3: _patternIndex=content.toInt(); return true;
case 4: _constant=content.toBool(); return true;
case 5: _mandatory=content.toBool(); return true;
case 6: _value=content.toString(); return true;
case 7: _factor=content.toDouble(); return true;
default:
break;
}
return false;
}
| virtual const QString& GeopsyCore::AsciiSignalFormatRule::xml_tagName | ( | ) | const [inline, virtual] |
Implements QGpCoreTools::XMLClass.
{return xmlRuleTag;}
| void GeopsyCore::AsciiSignalFormatRule::xml_writeProperties | ( | XML_WRITEPROPERTIES_ARGS | ) | const [protected, virtual] |
Reimplemented from QGpCoreTools::XMLClass.
References QGpCoreTools::XMLSaveAttributes::add(), GeopsyCore::MetaDataIndex::index(), GeopsyCore::MetaDataFactory::instance(), TRACE, and QGpCoreTools::XMLClass::writeProperty().
{
TRACE;
Q_UNUSED(context);
writeProperty(s, "channel", _channel);
XMLSaveAttributes att;
att.add(indexKey, _data.index());
writeProperty(s, "data", att, MetaDataFactory::instance()->baseName(_data));
writeProperty(s, "constant", (bool)_constant);
if(_constant) {
writeProperty(s, "value", _value.toString());
} else {
writeProperty(s, "mandatory", (bool)_mandatory);
writeProperty(s, "pattern", _pattern);
writeProperty(s, "patternIndex", (int)_patternIndex);
}
writeProperty(s, "factor", _factor);
}
const QString GeopsyCore::AsciiSignalFormatRule::xmlRuleTag = "Rule" [static] |
Referenced by GeopsyCore::AsciiSignalFormat::xml_member().