libSBML C API  libSBML 5.8.0 C API
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
SBMLFunctionDefinitionConverter Class Reference

Detailed Description

SBML converter for replacing function definitions.

This class of objects is defined by libSBML only and has no direct equivalent in terms of SBML components. It is a class used in the implementation of extra functionality provided by libSBML.

This is an SBML converter for manipulating user-defined functions in an SBML file. When invoked on the current model, it performs the following operation:

  1. Read the list of user-defined functions in the model (i.e., the list of FunctionDefinition objects);
  2. Look for invocations of the function in mathematical expressions throughout the model; and
  3. For each invocation found, replaces the invocation with a in-line copy of the function's body, similar to how macro expansions might be performed in scripting and programming languages.

For example, suppose the model contains a function definition representing the function f(x, y) = x * y. Further suppose this functions invoked somewhere else in the model, in a mathematical formula, as f(s, p). The outcome of running SBMLFunctionDefinitionConverter on the model will be to replace the call to f with the expression s * p.

See Also
SBMLInitialAssignmentConverter
SBMLLevelVersionConverter
SBMLRuleConverter
SBMLStripPackageConverter
SBMLUnitsConverter