OpenASIP  2.0
Public Types | Public Member Functions | Protected Member Functions | Private Attributes | List of all members
DataObject Class Reference

#include <DataObject.hh>

Inheritance diagram for DataObject:
Inheritance graph
Collaboration diagram for DataObject:
Collaboration graph

Public Types

enum  OrigType {
  TYPE_INT, TYPE_STRING, TYPE_DOUBLE, TYPE_FLOAT,
  TYPE_NULL, TYPE_NOTYPE
}
 

Public Member Functions

 DataObject ()
 
 DataObject (int value)
 
 DataObject (SLongWord value)
 
 DataObject (double value)
 
 DataObject (const std::string value)
 
virtual ~DataObject ()
 
virtual int integerValue () const
 
virtual void setInteger (int value)
 
virtual void setLong (SLongWord value)
 
virtual SLongWord longValue () const
 
virtual std::string stringValue () const
 
virtual void setString (std::string value)
 
virtual double doubleValue () const
 
virtual void setDouble (double value)
 
virtual float floatValue () const
 
virtual void setFloat (float value)
 
virtual bool boolValue () const
 
virtual void setBool (bool value)
 
virtual bool isNull () const
 
virtual void setNull ()
 
virtual bool operator!= (const DataObject &object) const
 

Protected Member Functions

OrigType type () const
 
bool intFresh () const
 
bool stringFresh () const
 
bool doubleFresh () const
 
bool floatFresh () const
 

Private Attributes

OrigType type_
 The type of value in which DataObject was last assigned. More...
 
bool intFresh_
 Flag indicating that the value of integer is up-to-date. More...
 
bool stringFresh_
 Flag indicating that the value of string is up-to-date. More...
 
bool doubleFresh_
 Flag indicating that the value of double is up-to-date. More...
 
bool floatFresh_
 Flag indicating that the value of float is up-to-date. More...
 
SLongWord intValue_
 Value as integer. More...
 
std::string stringValue_
 Value as string. More...
 
double doubleValue_
 Value as double. More...
 
float floatValue_
 Value as float. More...
 

Detailed Description

Class that represents data in different formats.

Data can be represented as a string, integer, double, or float. The idea behind the data object is to cache the conversion results and to minimize conversions. The DataObject's value can be null, it is indicated with isNull() returning true. This should not be confused with NullDataObject, which is just there to indicate a DataObject reference which is null (a null reference, compares to a null pointer).

Definition at line 50 of file DataObject.hh.

Member Enumeration Documentation

◆ OrigType

Models the type with which DataObject was originally initialized.

Enumerator
TYPE_INT 
TYPE_STRING 
TYPE_DOUBLE 
TYPE_FLOAT 
TYPE_NULL 
TYPE_NOTYPE 

Definition at line 56 of file DataObject.hh.

56  {
57  TYPE_INT,
60  TYPE_FLOAT,
61  TYPE_NULL,
63  };

Constructor & Destructor Documentation

◆ DataObject() [1/5]

DataObject::DataObject ( )

Constructor.

Creates an DataObject which represents an empty string.

Definition at line 46 of file DataObject.cc.

46  :
47  type_(TYPE_STRING), intFresh_(false), stringFresh_(true),
48  doubleFresh_(false), floatFresh_(false), intValue_(0), stringValue_(""),
49  doubleValue_(0), floatValue_(0) {
50 }

◆ DataObject() [2/5]

DataObject::DataObject ( int  value)
explicit

Constructor for integer data.

Parameters
valueValue as integer.

Definition at line 57 of file DataObject.cc.

57  {
58  setInteger(value);
59 }

References setInteger().

Here is the call graph for this function:

◆ DataObject() [3/5]

DataObject::DataObject ( SLongWord  value)
explicit

Constructor for integer data.

Parameters
valueValue as integer.

Definition at line 66 of file DataObject.cc.

66  {
67  setLong(value);
68 }

References setLong().

Here is the call graph for this function:

◆ DataObject() [4/5]

DataObject::DataObject ( double  value)
explicit

Constructor for double data.

Parameters
valueValue as double.

Definition at line 75 of file DataObject.cc.

75  {
76  setDouble(value);
77 }

References setDouble().

Here is the call graph for this function:

◆ DataObject() [5/5]

DataObject::DataObject ( const std::string  value)
explicit

Constructor for string data.

Parameters
valueValue as string.

Definition at line 84 of file DataObject.cc.

84  {
85  setString(value);
86 }

References setString().

Here is the call graph for this function:

◆ ~DataObject()

DataObject::~DataObject ( )
virtual

Destructor.

Definition at line 91 of file DataObject.cc.

91  {
92 }

Member Function Documentation

◆ boolValue()

bool DataObject::boolValue ( ) const
virtual

Returns the bool value of DataObject.

The conversion is done from the original data type. The NULL value is represented as "false".

Returns
The bool value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Definition at line 470 of file DataObject.cc.

470  {
471  if (type_ == TYPE_STRING) {
472  std::string strValue = StringTools::stringToLower(stringValue());
473  if (strValue == "true") {
474  return true;
475  } else if (strValue == "false") {
476  return false;
477  }
478  } else if (type_ == TYPE_NULL) {
479  return false;
480  }
481 
482  return integerValue();
483 }

References integerValue(), StringTools::stringToLower(), stringValue(), type_, TYPE_NULL, and TYPE_STRING.

Referenced by HDB::HDBManager::addOperationPipelinesToFUArchitecture(), HDB::HDBManager::addPortsAndBindingsToFUArchitecture(), HDB::HDBManager::createImplementationOfRF(), and HDB::HDBManager::rfArchitectureByID().

Here is the call graph for this function:

◆ doubleFresh()

bool DataObject::doubleFresh ( ) const
protected

◆ doubleValue()

double DataObject::doubleValue ( ) const
virtual

Returns the double value of DataObject.

If double value is not available, the conversion is done from the original data type. Note that a NULL DataObject is converted to 0.0.

Returns
The double value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Reimplemented in NullDataObject.

Definition at line 386 of file DataObject.cc.

386  {
387  if (doubleFresh_) {
388  return doubleValue_;
389  } else {
390  switch (type_) {
391  case TYPE_STRING:
393  break;
394  case TYPE_INT:
396  break;
397  case TYPE_FLOAT:
399  break;
400  case TYPE_NOTYPE: {
401  string method = "DataObject::doubleValue()";
402  string message = "DataObject not initialized.";
403  throw NumberFormatException(__FILE__, __LINE__, method, message);
404  break;
405  }
406  case TYPE_NULL:
407  doubleValue_ = 0.0;
408  break;
409  default:
410  break;
411  }
412  doubleFresh_ = true;
413  return doubleValue_;
414  }
415 }

References doubleFresh_, doubleValue_, floatValue_, intValue_, stringValue_, Conversion::toDouble(), type_, TYPE_FLOAT, TYPE_INT, TYPE_NOTYPE, TYPE_NULL, and TYPE_STRING.

Referenced by DSDBManager::applicationCostEstimatesByConf(), CostDatabase::buildBuses(), CostDatabase::buildFunctionUnits(), CostDatabase::buildRegisterFiles(), CostDatabase::buildSockets(), CustomCommand::checkDoubleArgument(), DSDBManager::cycleCount(), DefaultICDecoderEstimator::delayOfBus(), DefaultICDecoderEstimator::delayOfSocket(), DSDBManager::energyEstimate(), StrictMatchRFEstimator::estimateArea(), StrictMatchFUEstimator::estimateArea(), StrictMatchFUEstimator::estimateEnergy(), StrictMatchRFEstimator::estimateEnergy(), DefaultICDecoderEstimator::estimateICArea(), StrictMatchFUEstimator::estimateMaximumComputationDelay(), StrictMatchRFEstimator::estimateMaximumComputationDelay(), StrictMatchFUEstimator::estimatePortReadDelay(), StrictMatchRFEstimator::estimatePortReadDelay(), StrictMatchFUEstimator::estimatePortWriteDelay(), StrictMatchRFEstimator::estimatePortWriteDelay(), and DSDBManager::longestPathDelayEstimate().

Here is the call graph for this function:

◆ floatFresh()

bool DataObject::floatFresh ( ) const
protected

◆ floatValue()

float DataObject::floatValue ( ) const
virtual

Returns the float value of DataObject.

If float value is not available, the conversion is done from the original data type. Note that a NULL DataObject is converted to 0.0.

Returns
The float value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Reimplemented in NullDataObject.

Definition at line 428 of file DataObject.cc.

428  {
429  if (floatFresh_) {
430  return floatValue_;
431  } else {
432  switch (type_) {
433  case TYPE_STRING:
435  break;
436  case TYPE_INT:
438  break;
439  case TYPE_DOUBLE:
441  break;
442  case TYPE_NOTYPE: {
443  string method = "DataObject::floatValue()";
444  string message = "DataObject not initialized.";
445  throw NumberFormatException(__FILE__, __LINE__, method, message);
446  break;
447  }
448  case TYPE_NULL:
449  floatValue_ = 0.0;
450  break;
451  default:
452  break;
453  }
454  floatFresh_ = true;
455  return floatValue_;
456  }
457 }

References doubleValue_, floatFresh_, floatValue_, intValue_, stringValue_, Conversion::toFloat(), type_, TYPE_DOUBLE, TYPE_INT, TYPE_NOTYPE, TYPE_NULL, and TYPE_STRING.

Here is the call graph for this function:

◆ integerValue()

int DataObject::integerValue ( ) const
virtual

Returns the integer value of DataObject.

If integer value is not available, the conversion is done from the original value type. Note that a NULL DataObject is converted to 0.

Returns
The integer value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Reimplemented in NullDataObject.

Definition at line 204 of file DataObject.cc.

204  {
205  if (intFresh_) {
206  return intValue_;
207  } else {
208  try {
209  switch (type_) {
210  case TYPE_STRING:
212  break;
213  case TYPE_DOUBLE:
215  break;
216  case TYPE_FLOAT:
218  break;
219  case TYPE_NOTYPE: {
220  string method = "DataObject::integerValue()";
221  string message = "DataObject not initialized.";
222  throw NumberFormatException(
223  __FILE__, __LINE__, method, message);
224  break;
225  }
226  case TYPE_NULL:
227  intValue_ = 0;
228  break;
229  default:
230  break;
231  }
232  } catch (const NumberFormatException&) {
233 
234  // it can be an unsigned int, let's try to convert to
235  // unsigned int first
236  switch (type_) {
237  case TYPE_STRING:
239  break;
240  case TYPE_DOUBLE:
242  break;
243  case TYPE_FLOAT:
245  break;
246  case TYPE_NOTYPE: {
247  string method = "DataObject::integerValue()";
248  string message = "DataObject not initialized.";
249  throw NumberFormatException(
250  __FILE__, __LINE__, method, message);
251  break;
252  }
253  default:
254  break;
255  }
256  }
257  intFresh_ = true;
258  return intValue_;
259  }
260 }

References doubleValue_, floatValue_, intFresh_, intValue_, stringValue_, Conversion::toInt(), Conversion::toUnsignedInt(), type_, TYPE_DOUBLE, TYPE_FLOAT, TYPE_NOTYPE, TYPE_NULL, and TYPE_STRING.

Referenced by HDB::HDBManager::addOpcodesToImplementation(), HDB::HDBManager::addOperationPipelinesToFUArchitecture(), HDB::HDBManager::addPortsAndBindingsToFUArchitecture(), InstructionExecution::address(), DSDBManager::applicationCostEstimatesByConf(), DSDBManager::applicationCount(), DSDBManager::applicationIDs(), DSDBManager::archConfigurationIDs(), DSDBManager::architectureId(), DSDBManager::architectureIDs(), DSDBManager::areaEstimate(), boolValue(), CostDatabase::buildBuses(), CostDatabase::buildSockets(), HDB::HDBManager::busCostEstimationDataIDs(), HDB::HDBManager::busEntryIDs(), CustomCommand::checkIntegerArgument(), CustomCommand::checkPositiveIntegerArgument(), CustomCommand::checkUnsignedIntegerArgument(), DSDBManager::configuration(), DSDBManager::configurationId(), DSDBManager::configurationIDs(), HDB::HDBManager::costEstimationData(), HDB::HDBManager::costEstimationDataIDs(), HDB::HDBManager::costFunctionPluginByID(), HDB::HDBManager::costFunctionPluginDataIDs(), HDB::HDBManager::costFunctionPluginIDs(), HDB::HDBManager::createCostFunctionOfFU(), HDB::HDBManager::createCostFunctionOfRF(), HDB::HDBManager::createImplementationOfFU(), HDB::HDBManager::createImplementationOfRF(), InstructionExecution::cycle(), DefaultICDecoderEstimator::delayOfSocket(), HDB::HDBManager::fuArchitectureID(), HDB::HDBManager::fuArchitectureIDs(), HDB::HDBManager::fuArchitectureIDsByOperationSet(), HDB::HDBManager::fuByEntryID(), HDB::HDBManager::fuCostEstimationDataIDs(), HDB::HDBManager::fuEntriesByArchitecture(), HDB::HDBManager::fuEntryIDOfImplementation(), HDB::HDBManager::fuEntryIDs(), HDB::HDBManager::OperationImplementationByID(), HDB::HDBManager::OperationImplementationIDs(), HDB::HDBManager::OperationImplementationResourceIDs(), DSDBManager::paretoSetConnectivityAndCycles(), HDB::HDBManager::removeBusEntry(), HDB::HDBManager::removeFUEntry(), HDB::HDBManager::removeOperationImplementation(), HDB::HDBManager::removeOperationImplementationResource(), HDB::HDBManager::removeRFEntry(), HDB::HDBManager::removeSocketEntry(), HDB::HDBManager::resolveArchitecturePort(), HDB::HDBManager::rfArchitectureByID(), HDB::HDBManager::rfArchitectureID(), HDB::HDBManager::rfArchitectureIDs(), HDB::HDBManager::rfByEntryID(), HDB::HDBManager::rfCostEstimationDataIDs(), HDB::HDBManager::rfEntriesByArchitecture(), HDB::HDBManager::rfEntryIDOfImplementation(), HDB::HDBManager::rfEntryIDs(), SQLiteConnection::rowCountInTable(), HDB::HDBManager::socketCostEstimationDataIDs(), HDB::HDBManager::socketEntryIDs(), SQLiteConnection::tableExistsInDB(), ScriptInterpreter::variableIntegerValue(), and SQLiteConnection::version().

Here is the call graph for this function:

◆ intFresh()

bool DataObject::intFresh ( ) const
protected

◆ isNull()

bool DataObject::isNull ( ) const
virtual

◆ longValue()

SLongWord DataObject::longValue ( ) const
virtual

Returns the (long) integer value of DataObject.

If integer value is not available, the conversion is done from the original value type. Note that a NULL DataObject is converted to 0.

Returns
The integer value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Reimplemented in NullDataObject.

Definition at line 273 of file DataObject.cc.

273  {
274 
275  if (intFresh_) {
276  return intValue_;
277  } else {
278  try {
279  switch (type_) {
280  case TYPE_STRING:
282  break;
283  case TYPE_DOUBLE:
285  break;
286  case TYPE_FLOAT:
288  break;
289  case TYPE_NOTYPE: {
290  string method = "DataObject::integerValue()";
291  string message = "DataObject not initialized.";
292  throw NumberFormatException(
293  __FILE__, __LINE__, method, message);
294  break;
295  }
296  case TYPE_NULL:
297  intValue_ = 0;
298  break;
299  default:
300  break;
301  }
302  } catch (const NumberFormatException&) {
303 
304  // it can be an unsigned int, let's try to convert to
305  // unsigned int first
306  switch (type_) {
307  case TYPE_STRING:
309  break;
310  case TYPE_DOUBLE:
312  break;
313  case TYPE_FLOAT:
315  break;
316  case TYPE_NOTYPE: {
317  string method = "DataObject::integerValue()";
318  string message = "DataObject not initialized.";
319  throw NumberFormatException(
320  __FILE__, __LINE__, method, message);
321  break;
322  }
323  default:
324  break;
325  }
326  }
327  intFresh_ = true;
328  return intValue_;
329  }
330 }

References doubleValue_, floatValue_, intFresh_, intValue_, stringValue_, Conversion::toLong(), Conversion::toUnsignedLong(), type_, TYPE_DOUBLE, TYPE_FLOAT, TYPE_NOTYPE, TYPE_NULL, and TYPE_STRING.

Here is the call graph for this function:

◆ operator!=()

bool DataObject::operator!= ( const DataObject object) const
virtual

Tests the inequality of two DataObjects.

Parameters
objectThe object this object is compared to.
Returns
True if the two objects are inequal.
Exceptions
NumberFormatExceptionIf conversion fails.

Definition at line 503 of file DataObject.cc.

503  {
504  if (object.type_ != type_)
505  return true;
506 
507  if (type_ == TYPE_NULL)
508  return false; // the type_ is the value as itself
509 
510  string value1 = stringValue();
511  string value2 = object.stringValue();
512  return value1 != value2;
513 }

References stringValue(), type_, and TYPE_NULL.

Here is the call graph for this function:

◆ setBool()

void DataObject::setBool ( bool  value)
virtual

Sets the bool value of DataObject.

Parameters
valueThe bool value of DataObject.

Definition at line 175 of file DataObject.cc.

175  {
176  setInteger(value);
177 }

References setInteger().

Here is the call graph for this function:

◆ setDouble()

void DataObject::setDouble ( double  value)
virtual

Sets the double value of DataObject.

Parameters
valueThe double value of DataObject.

Reimplemented in NullDataObject.

Definition at line 145 of file DataObject.cc.

145  {
146  type_ = TYPE_DOUBLE;
147  doubleFresh_ = true;
148  intFresh_ = false;
149  stringFresh_ = false;
150  floatFresh_ = false;
151  doubleValue_ = value;
152 }

References doubleFresh_, doubleValue_, floatFresh_, intFresh_, stringFresh_, type_, and TYPE_DOUBLE.

Referenced by DataObject(), and ScriptInterpreter::setResult().

◆ setFloat()

void DataObject::setFloat ( float  value)
virtual

Sets the float value of DataObject.

Parameters
valueThe float value of DataObject.

Reimplemented in NullDataObject.

Definition at line 160 of file DataObject.cc.

160  {
161  type_ = TYPE_FLOAT;
162  floatFresh_ = true;
163  intFresh_ = false;
164  stringFresh_ = false;
165  doubleFresh_ = false;
166  floatValue_ = value;
167 }

References doubleFresh_, floatFresh_, floatValue_, intFresh_, stringFresh_, type_, and TYPE_FLOAT.

◆ setInteger()

void DataObject::setInteger ( int  value)
virtual

Sets the integer value of DataObject.

Parameters
valueThe integer value.

Reimplemented in NullDataObject.

Definition at line 115 of file DataObject.cc.

115  {
116  type_ = TYPE_INT;
117  intFresh_ = true;
118  stringFresh_ = false;
119  doubleFresh_ = false;
120  floatFresh_ = false;
121  intValue_ = value;
122 }

References doubleFresh_, floatFresh_, intFresh_, intValue_, stringFresh_, type_, and TYPE_INT.

Referenced by DataObject(), setBool(), ScriptInterpreter::setResult(), and ScriptInterpreter::setVariable().

◆ setLong()

void DataObject::setLong ( SLongWord  value)
virtual

Sets the integer value of DataObject.

Parameters
valueThe integer value.

Reimplemented in NullDataObject.

Definition at line 100 of file DataObject.cc.

100  {
101  type_ = TYPE_INT;
102  intFresh_ = true;
103  stringFresh_ = false;
104  doubleFresh_ = false;
105  floatFresh_ = false;
106  intValue_ = value;
107 }

References doubleFresh_, floatFresh_, intFresh_, intValue_, stringFresh_, type_, and TYPE_INT.

Referenced by DataObject().

◆ setNull()

void DataObject::setNull ( )
virtual

Sets the DataObject to null.

Reimplemented in NullDataObject.

Definition at line 184 of file DataObject.cc.

184  {
185  type_ = TYPE_NULL;
186  intFresh_ = true;
187  intValue_ = 0;
188  stringFresh_ = true;
189  stringValue_ = "";
190 }

References intFresh_, intValue_, stringFresh_, stringValue_, type_, and TYPE_NULL.

Referenced by SQLiteQueryResult::next().

◆ setString()

void DataObject::setString ( std::string  value)
virtual

Sets the string value of DataObject.

Parameters
valueThe string value.

Reimplemented in NullDataObject.

Definition at line 130 of file DataObject.cc.

130  {
131  type_ = TYPE_STRING;
132  stringFresh_ = true;
133  intFresh_ = false;
134  doubleFresh_ = false;
135  floatFresh_ = false;
136  stringValue_ = value;
137 }

References doubleFresh_, floatFresh_, intFresh_, stringFresh_, stringValue_, type_, and TYPE_STRING.

Referenced by CustomCommand::checkArgumentCount(), CustomCommand::checkDoubleArgument(), CustomCommand::checkIntegerArgument(), CustomCommand::checkPositiveIntegerArgument(), SimControlLanguageCommand::checkSimulationEnded(), SimControlLanguageCommand::checkSimulationInitialized(), SimControlLanguageCommand::checkSimulationNotAlreadyRunning(), SimControlLanguageCommand::checkSimulationStopped(), CustomCommand::checkUnsignedIntegerArgument(), DataObject(), HelpCommand::execute(), MachCommand::execute(), ConfCommand::execute(), ProgCommand::execute(), MemDumpCommand::execute(), Script::execute(), SettingCommand::execute(), CmdHelp::execute(), CmdTrigger::execute(), CmdReset::execute(), CmdQuit::execute(), CmdOutput::execute(), CmdRegister::execute(), CmdMem::execute(), CmdAdvanceClock::execute(), SimpleScriptInterpreter::interpret(), SQLiteQueryResult::next(), SimControlLanguageCommand::setErrorMessage(), ScriptInterpreter::setResult(), ScriptInterpreter::setVariable(), TclInterpreter::tclObjToDataObject(), and DefaultICDecoderEstimator::valueFromKeyValuePairString().

◆ stringFresh()

bool DataObject::stringFresh ( ) const
protected

◆ stringValue()

string DataObject::stringValue ( ) const
virtual

Returns the string value of DataObject.

If string value is not available, the conversion is done from the original data type. Note that a NULL DataObject is converted to an empty string.

Returns
The string value of DataObject.
Exceptions
NumberFormatExceptionIf conversion fails or if DataObject is not initialized.

Reimplemented in NullDataObject.

Definition at line 344 of file DataObject.cc.

344  {
345  if (stringFresh_) {
346  return stringValue_;
347  } else {
348  switch (type_) {
349  case TYPE_INT:
351  break;
352  case TYPE_DOUBLE:
354  break;
355  case TYPE_FLOAT:
357  break;
358  case TYPE_NOTYPE: {
359  string method = "DataObject::stringValue()";
360  string message = "DataObject not initialized.";
361  throw NumberFormatException(__FILE__, __LINE__, method, message);
362  break;
363  }
364  case TYPE_NULL:
365  stringValue_ = "";
366  break;
367  default:
368  break;
369  }
370  stringFresh_ = true;
371  return stringValue_;
372  }
373 }

References doubleValue_, floatValue_, intValue_, stringFresh_, stringValue_, Conversion::toString(), type_, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_NOTYPE, and TYPE_NULL.

Referenced by HDB::HDBManager::addBlockImplementationFiles(), HDB::HDBManager::addCostEstimationData(), HDB::HDBManager::addDataPortsToImplementation(), HDB::HDBManager::addFUExternalPortsToImplementation(), HDB::HDBManager::addFUImplementation(), HDB::HDBManager::addFUParametersToImplementation(), HDB::HDBManager::addOpcodesToImplementation(), HDB::HDBManager::addOperationPipelinesToFUArchitecture(), HDB::HDBManager::addPortsAndBindingsToFUArchitecture(), HDB::HDBManager::addRFExternalPortsToImplementation(), HDB::HDBManager::addRFParametersToImplementation(), DSDBManager::applicationCostEstimatesByConf(), DSDBManager::applicationPath(), DSDBManager::architectureString(), HDB::HDBManager::blockSourceFile(), boolValue(), HDBToHtml::busEntryToHtml(), CustomCommand::checkUnsignedIntegerArgument(), ConditionScript::conditionOk(), HDB::HDBManager::costEstimationData(), HDB::HDBManager::costFunctionPluginByID(), HDBToHtml::costFunctionPluginToHtml(), HDB::HDBManager::createCostFunctionOfFU(), HDB::HDBManager::createCostFunctionOfRF(), HDB::HDBManager::createImplementationOfFU(), HDB::HDBManager::createImplementationOfRF(), DefaultICDecoderEstimator::delayOfBus(), DefaultICDecoderEstimator::delayOfSocket(), DefaultICDecoderEstimator::estimateICArea(), DefaultICDecoderEstimator::estimateICEnergy(), MemDumpCommand::execute(), HDBToHtml::fuEntryToHtml(), HDBToHtml::fuImplToHtml(), HDB::HDBManager::hasColumn(), DSDBManager::implementationString(), HDB::HDBManager::modifyCostEstimationData(), HDB::HDBManager::OperationImplementationByID(), HDB::HDBManager::OperationImplementationResourceByID(), operator!=(), HDB::HDBManager::resolveArchitecturePort(), ScriptInterpreter::result(), HDBToHtml::rfEntryToHtml(), HDBToHtml::rfImplToHtml(), SimpleScriptInterpreter::setVariableToInterpreter(), TclInterpreter::setVariableToInterpreter(), HDBToHtml::socketEntryToHtml(), CostFunctionPluginDialog::TransferDataToWindow(), CostEstimationDataDialog::TransferDataToWindow(), and ScriptInterpreter::variableStringValue().

Here is the call graph for this function:

◆ type()

OrigType DataObject::type ( ) const
protected

Member Data Documentation

◆ doubleFresh_

bool DataObject::doubleFresh_
mutableprivate

Flag indicating that the value of double is up-to-date.

Definition at line 110 of file DataObject.hh.

Referenced by doubleValue(), setDouble(), setFloat(), setInteger(), setLong(), and setString().

◆ doubleValue_

double DataObject::doubleValue_
mutableprivate

Value as double.

Definition at line 118 of file DataObject.hh.

Referenced by doubleValue(), floatValue(), integerValue(), longValue(), setDouble(), and stringValue().

◆ floatFresh_

bool DataObject::floatFresh_
mutableprivate

Flag indicating that the value of float is up-to-date.

Definition at line 112 of file DataObject.hh.

Referenced by floatValue(), setDouble(), setFloat(), setInteger(), setLong(), and setString().

◆ floatValue_

float DataObject::floatValue_
mutableprivate

Value as float.

Definition at line 120 of file DataObject.hh.

Referenced by doubleValue(), floatValue(), integerValue(), longValue(), setFloat(), and stringValue().

◆ intFresh_

bool DataObject::intFresh_
mutableprivate

Flag indicating that the value of integer is up-to-date.

Definition at line 106 of file DataObject.hh.

Referenced by integerValue(), longValue(), setDouble(), setFloat(), setInteger(), setLong(), setNull(), and setString().

◆ intValue_

SLongWord DataObject::intValue_
mutableprivate

Value as integer.

Definition at line 114 of file DataObject.hh.

Referenced by doubleValue(), floatValue(), integerValue(), longValue(), setInteger(), setLong(), setNull(), and stringValue().

◆ stringFresh_

bool DataObject::stringFresh_
mutableprivate

Flag indicating that the value of string is up-to-date.

Definition at line 108 of file DataObject.hh.

Referenced by setDouble(), setFloat(), setInteger(), setLong(), setNull(), setString(), and stringValue().

◆ stringValue_

std::string DataObject::stringValue_
mutableprivate

Value as string.

Definition at line 116 of file DataObject.hh.

Referenced by doubleValue(), floatValue(), integerValue(), longValue(), setNull(), setString(), and stringValue().

◆ type_

OrigType DataObject::type_
private

The type of value in which DataObject was last assigned.

Definition at line 104 of file DataObject.hh.

Referenced by boolValue(), doubleValue(), floatValue(), integerValue(), isNull(), longValue(), operator!=(), setDouble(), setFloat(), setInteger(), setLong(), setNull(), setString(), and stringValue().


The documentation for this class was generated from the following files:
DataObject::TYPE_STRING
@ TYPE_STRING
Definition: DataObject.hh:58
NumberFormatException
Definition: Exception.hh:421
DataObject::setDouble
virtual void setDouble(double value)
Definition: DataObject.cc:145
DataObject::TYPE_INT
@ TYPE_INT
Definition: DataObject.hh:57
DataObject::stringValue
virtual std::string stringValue() const
Definition: DataObject.cc:344
DataObject::type_
OrigType type_
The type of value in which DataObject was last assigned.
Definition: DataObject.hh:104
DataObject::TYPE_NOTYPE
@ TYPE_NOTYPE
Definition: DataObject.hh:62
DataObject::setInteger
virtual void setInteger(int value)
Definition: DataObject.cc:115
DataObject::floatFresh_
bool floatFresh_
Flag indicating that the value of float is up-to-date.
Definition: DataObject.hh:112
Conversion::toString
static std::string toString(const T &source)
DataObject::intFresh_
bool intFresh_
Flag indicating that the value of integer is up-to-date.
Definition: DataObject.hh:106
DataObject::floatValue_
float floatValue_
Value as float.
Definition: DataObject.hh:120
DataObject::TYPE_DOUBLE
@ TYPE_DOUBLE
Definition: DataObject.hh:59
Conversion::toDouble
static double toDouble(const T &source)
DataObject::integerValue
virtual int integerValue() const
Definition: DataObject.cc:204
DataObject::setLong
virtual void setLong(SLongWord value)
Definition: DataObject.cc:100
DataObject::intValue_
SLongWord intValue_
Value as integer.
Definition: DataObject.hh:114
DataObject::stringFresh_
bool stringFresh_
Flag indicating that the value of string is up-to-date.
Definition: DataObject.hh:108
DataObject::TYPE_FLOAT
@ TYPE_FLOAT
Definition: DataObject.hh:60
Conversion::toUnsignedInt
static unsigned int toUnsignedInt(const T &source)
DataObject::doubleFresh_
bool doubleFresh_
Flag indicating that the value of double is up-to-date.
Definition: DataObject.hh:110
DataObject::TYPE_NULL
@ TYPE_NULL
Definition: DataObject.hh:61
DataObject::stringValue_
std::string stringValue_
Value as string.
Definition: DataObject.hh:116
Conversion::toLong
static SLongWord toLong(const T &source)
Conversion::toInt
static int toInt(const T &source)
DataObject::setString
virtual void setString(std::string value)
Definition: DataObject.cc:130
DataObject::doubleValue_
double doubleValue_
Value as double.
Definition: DataObject.hh:118
Conversion::toUnsignedLong
static ULongWord toUnsignedLong(const T &source)
StringTools::stringToLower
static std::string stringToLower(const std::string &source)
Definition: StringTools.cc:160
Conversion::toFloat
static float toFloat(const T &source)