DataSet Class Reference

A data set. More...

`#include <DataSet.h>`

Inheritance diagram for DataSet:

## Public Member Functions

| DataSet (string s_category="", string s_name="", string s_default_file="", string s_title="", string s_description="", bool is_local=true)
| DataSet (const DataSet *o)
ExpressionItem * | copy () const
void | set (const ExpressionItem *item)
int | subtype () const
void | setCopyright (string s_copyright)
const string & | copyright () const
void | setDefaultDataFile (string s_file)
const string & | defaultDataFile () const
void | setDefaultProperty (string property)
const string & | defaultProperty () const
virtual int | calculate (MathStructure &mstruct, const MathStructure &vargs, const EvaluationOptions &eo)
bool | loadObjects (const char *file_name=NULL, bool is_user_defs=true)
int | saveObjects (const char *file_name=NULL, bool save_global=false)
bool | objectsLoaded () const
void | setObjectsLoaded (bool objects_loaded)
void | addProperty (DataProperty *dp)
void | delProperty (DataProperty *dp)
void | delProperty (DataPropertyIter *it)
DataProperty * | getPrimaryKeyProperty ()
DataProperty * | getProperty (string property)
DataProperty * | getFirstProperty (DataPropertyIter *it)
DataProperty * | getNextProperty (DataPropertyIter *it)
const string & | getFirstPropertyName (DataPropertyIter *it)
const string & | getNextPropertyName (DataPropertyIter *it)
void | addObject (DataObject *o)
void | delObject (DataObject *o)
void | delObject (DataObjectIter *it)
DataObject * | getObject (string object)
DataObject * | getObject (const MathStructure &object)
DataObject * | getFirstObject (DataObjectIter *it)
DataObject * | getNextObject (DataObjectIter *it)
const MathStructure * | getObjectProperyStruct (string property, string object)
const string & | getObjectProperty (string property, string object)
string | getObjectPropertyInputString (string property, string object)
string | getObjectPropertyDisplayString (string property, string object)
string | printProperties (string object)
string | printProperties (DataObject *o)
Public Member Functions inherited from MathFunction
| MathFunction (string name_, int argc_, int max_argc_=0, string cat_="", string title_="", string descr_="", bool is_active=true)
| MathFunction (const MathFunction *function)
virtual int | type () const
bool | testArgumentCount (int itmp)
virtual MathStructure | calculate (const string &eq, const EvaluationOptions &eo=default_evaluation_options)
virtual MathStructure | parse (const string &eq, const ParseOptions &po=default_parse_options)
virtual int | parse (MathStructure &mstruct, const string &eq, const ParseOptions &po=default_parse_options)
virtual MathStructure | calculate (MathStructure &vargs, const EvaluationOptions &eo=default_evaluation_options)
string | condition () const
string | printCondition ()
void | setCondition (string expression)
bool | testCondition (const MathStructure &vargs)
int | args () const
int | minargs () const
int | maxargs () const
int | args (const string &str, MathStructure &vargs, const ParseOptions &po=default_parse_options)
size_t | lastArgumentDefinitionIndex () const
Argument * | getArgumentDefinition (size_t index)
void | clearArgumentDefinitions ()
void | setArgumentDefinition (size_t index, Argument *argdef)
int | stringArgs (const string &str, vector< string > &svargs)
void | setDefaultValue (size_t arg_, string value_)
const string & | getDefaultValue (size_t arg_) const
void | appendDefaultValues (MathStructure &vargs)
MathStructure | produceVector (const MathStructure &vargs, int begin=-1, int end=-1)
MathStructure | produceArgumentsVector (const MathStructure &vargs, int begin=-1, int end=-1)
virtual bool | representsPositive (const MathStructure &, bool=false) const
virtual bool | representsNegative (const MathStructure &, bool=false) const
virtual bool | representsNonNegative (const MathStructure &, bool=false) const
virtual bool | representsNonPositive (const MathStructure &, bool=false) const
virtual bool | representsInteger (const MathStructure &, bool=false) const
virtual bool | representsNumber (const MathStructure &, bool=false) const
virtual bool | representsRational (const MathStructure &, bool=false) const
virtual bool | representsReal (const MathStructure &, bool=false) const
virtual bool | representsComplex (const MathStructure &, bool=false) const
virtual bool | representsNonZero (const MathStructure &, bool=false) const
virtual bool | representsEven (const MathStructure &, bool=false) const
virtual bool | representsOdd (const MathStructure &, bool=false) const
virtual bool | representsUndefined (const MathStructure &) const
virtual bool | representsBoolean (const MathStructure &) const
virtual bool | representsNonMatrix (const MathStructure &) const
Public Member Functions inherited from ExpressionItem
| ExpressionItem (string cat_, string name_, string title_="", string descr_="", bool is_local=true, bool is_builtin=false, bool is_active=true)
virtual bool | destroy ()
bool | isRegistered () const
void | setRegistered (bool is_registered)
| For internal use.
virtual const string & | name (bool use_unicode=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual const string & | referenceName () const
virtual const ExpressionName & | preferredName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual const ExpressionName & | preferredInputName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual const ExpressionName & | preferredDisplayName (bool abbreviation=false, bool use_unicode=false, bool plural=false, bool reference=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual const ExpressionName & | getName (size_t index) const
virtual void | setName (const ExpressionName &ename, size_t index=1, bool force=true)
virtual void | setName (string sname, size_t index, bool force=true)
virtual void | addName (const ExpressionName &ename, size_t index=0, bool force=true)
virtual void | addName (string sname, size_t index=0, bool force=true)
virtual size_t | countNames () const
virtual void | clearNames ()
virtual void | clearNonReferenceNames ()
virtual void | removeName (size_t index)
virtual size_t | hasName (const string &sname, bool case_sensitive=true) const
virtual size_t | hasNameCaseSensitive (const string &sname) const
virtual const ExpressionName & | findName (int abbreviation=-1, int use_unicode=-1, int plural=-1, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual const string & | title (bool return_name_if_no_title=true, bool use_unicode=false, bool(*can_display_unicode_string_function)(const char *, void *)=NULL, void *can_display_unicode_string_arg=NULL) const
virtual void | setTitle (string title_)
virtual const string & | description () const
virtual void | setDescription (string descr_)
virtual const string & | category () const
virtual void | setCategory (string cat_)
virtual bool | hasChanged () const
virtual void | setChanged (bool has_changed)
virtual bool | isLocal () const
virtual bool | setLocal (bool is_local=true, int will_be_active=-1)
virtual bool | isBuiltin () const
virtual bool | isApproximate () const
virtual void | setApproximate (bool is_approx=true)
virtual int | precision () const
virtual void | setPrecision (int prec)
virtual bool | isActive () const
virtual void | setActive (bool is_active)
virtual bool | isHidden () const
virtual void | setHidden (bool is_hidden)
virtual int | refcount () const
virtual void | ref ()
virtual void | unref ()
virtual void | ref (ExpressionItem *o)
virtual void | unref (ExpressionItem *o)
virtual ExpressionItem * | getReferencer (size_t index=1) const
virtual bool | changeReference (ExpressionItem *o_from, ExpressionItem *o_to)

## Protected Attributes

string | sfile
string | scopyright
bool | b_loaded
vector< DataProperty * > | properties
vector< DataObject * > | objects
Protected Attributes inherited from MathFunction
MathFunction_p * | priv
int | argc
int | max_argc
vector< string > | default_values
size_t | last_argdef_index
string | scondition
Protected Attributes inherited from ExpressionItem
string | scat
string | stitle
string | sdescr
bool | b_local
bool | b_changed
bool | b_builtin
bool | b_approx
bool | b_active
bool | b_registered
bool | b_hidden
bool | b_destroyed
int | i_ref
int | i_precision
vector< ExpressionItem * > | v_refs
vector< ExpressionName > | names

## Additional Inherited Members

Protected Member Functions inherited from MathFunction
bool | testArguments (MathStructure &vargs)
virtual MathStructure | createFunctionMathStructureFromVArgs (const MathStructure &vargs)
virtual MathStructure | createFunctionMathStructureFromSVArgs (vector< string > &svargs)

## Detailed Description

A data set.

This is a simple database class for storage of many grouped values, when ordinary variables is not practical.

A data set consists of properties and objects, with values for the properties. Qalculate! includes for example a "Planets" data set with properties such as name, mass, speed and density, and an object for each planet in solar system.

A data set is also mathemtical function, dataset(object, property), which retrieves values for objects and properties. Data sets can be saved and loaded from a XML file.

## Member Function Documentation

virtual int DataSet::calculate | ( | MathStructure & | mstruct,
|  | const MathStructure & | vargs,
|  | const EvaluationOptions & | eo
| ) |  |

virtual

The main function for subclasses to reimplement. Calculates a value from arguments in vargs and puts it in mstruct.

This function expects the number of arguments to be equal to the maximum number of arguments, and checked by the argument definitions.

If the return value is negative, then argument -(return value) has been evaluated in mstruct. If -(return value) is greater than max arguments, then mstruct is a vector of evaluated argument values.

Parameters

  [out] | mstruct | Structure that is set with the result of the calculation.
  | vargs | Arguments passed to the mathematical function.
  | eo | Evaluation options.

Returns
  1 if the calculation was successful.

Reimplemented from MathFunction.

int DataSet::subtype | ( |  | ) | const

virtual

Returns the subtype of the mathematical function, corresponding to which subsubclass the object belongs to.

Returns
  FunctionSubtype.

Reimplemented from MathFunction.

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

- libqalculate/DataSet.h