Loading [MathJax]/extensions/tex2jax.js
libSBML C++ API  5.20.4
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
unsetAnnotation.cpp

Unsets the annotation for each element in the given SBML file.

Unsets the annotation for each element in the given SBML file.

/**
* @file unsetAnnotation.cpp
* @brief unset annotation for each element
* @author Akiya Jouraku
*
* <!--------------------------------------------------------------------------
* This sample program is distributed under a different license than the rest
* of libSBML. This program uses the open-source MIT license, as follows:
*
* Copyright (c) 2013-2018 by the California Institute of Technology
* (California, USA), the European Bioinformatics Institute (EMBL-EBI, UK)
* and the University of Heidelberg (Germany), with support from the National
* Institutes of Health (USA) under grant R01GM070923. All rights reserved.
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*
* Neither the name of the California Institute of Technology (Caltech), nor
* of the European Bioinformatics Institute (EMBL-EBI), nor of the University
* of Heidelberg, nor the names of any contributors, may be used to endorse
* or promote products derived from this software without specific prior
* written permission.
* ------------------------------------------------------------------------ -->
*/
#include <iostream>
#include <sbml/SBMLTypes.h>
#include "util.h"
using namespace std;
LIBSBML_CPP_NAMESPACE_USE
int
main (int argc, char* argv[])
{
if (argc != 3)
{
cout << endl << "Usage: unsetAnnotation <input-filename> <output-filename>" << endl << endl;
return 1;
}
unsigned int i,j;
const char* filename = argv[1];
SBMLDocument* document;
SBMLReader reader;
document = reader.readSBML(filename);
unsigned int errors = document->getNumErrors();
if(errors > 0)
{
document->printErrors(cerr);
delete document;
return errors;
}
Model* m = document->getModel();
m->unsetAnnotation();
for(i=0; i < m->getNumReactions(); i++)
{
Reaction* re = m->getReaction(i);
for(j=0; j < re->getNumReactants(); j++)
{
}
for(j=0; j < re->getNumProducts(); j++)
{
}
for(j=0; j < re->getNumModifiers(); j++)
{
}
if(re->isSetKineticLaw())
{
for(j=0; j < kl->getNumParameters(); j++)
{
Parameter* pa = kl->getParameter(j);
}
}
}
for(i=0; i < m->getNumSpecies(); i++)
{
Species* sp = m->getSpecies(i);
}
for(i=0; i < m->getNumCompartments(); i++)
{
Compartment* sp = m->getCompartment(i);
}
for(i=0; i < m->getNumFunctionDefinitions(); i++)
{
FunctionDefinition* sp = m->getFunctionDefinition(i);
}
for(i=0; i < m->getNumUnitDefinitions(); i++)
{
UnitDefinition* sp = m->getUnitDefinition(i);
}
for(i=0; i < m->getNumParameters(); i++)
{
Parameter* sp = m->getParameter(i);
}
for(i=0; i < m->getNumRules(); i++)
{
Rule* sp = m->getRule(i);
}
for(i=0; i < m->getNumInitialAssignments(); i++)
{
InitialAssignment* sp = m->getInitialAssignment(i);
}
for(i=0; i < m->getNumEvents(); i++)
{
Event* sp = m->getEvent(i);
for(j=0; j < sp->getNumEventAssignments(); j++)
{
}
}
for(i=0; i < m->getNumSpeciesTypes(); i++)
{
SpeciesType* sp = m->getSpeciesType(i);
}
for(i=0; i < m->getNumConstraints(); i++)
{
Constraint* sp = m->getConstraint(i);
}
writeSBML(document, argv[2]);
delete document;
return errors;
}
Include all SBML types in a single header file.
int writeSBML(const SBMLDocument_t *d, const char *filename)
Writes the given SBML document d to the file named by filename.
Definition Compartment.h:490
Definition Constraint.h:158
Definition EventAssignment.h:296
Definition Event.h:355
const EventAssignment * getEventAssignment(unsigned int n) const
Return a specific EventAssignment object of this Event.
Definition Event.cpp:1055
unsigned int getNumEventAssignments() const
Returns the number of EventAssignment objects attached to this Event.
Definition Event.cpp:1097
Definition FunctionDefinition.h:150
Definition InitialAssignment.h:289
Definition KineticLaw.h:203
unsigned int getNumParameters() const
Returns the number of parameters in this KineticLaw instance.
Definition KineticLaw.cpp:837
const Parameter * getParameter(unsigned int n) const
Returns the nth Parameter object in the list of parameters in this KineticLaw instance.
Definition KineticLaw.cpp:740
Definition ModifierSpeciesReference.h:92
Definition Parameter.h:202
Definition Reaction.h:224
unsigned int getNumReactants() const
Returns the number of reactant species in this Reaction.
Definition Reaction.cpp:1267
const KineticLaw * getKineticLaw() const
Returns the KineticLaw object contained in this Reaction.
Definition Reaction.cpp:396
const SpeciesReference * getProduct(unsigned int n) const
Returns the nth product species (as a SpeciesReference object) in the list of products in this Reacti...
Definition Reaction.cpp:1176
bool isSetKineticLaw() const
Predicate returning true if this Reaction contains a kinetic law object.
Definition Reaction.cpp:470
unsigned int getNumModifiers() const
Returns the number of modifier species in this Reaction.
Definition Reaction.cpp:1288
unsigned int getNumProducts() const
Returns the number of product species in this Reaction.
Definition Reaction.cpp:1277
const ModifierSpeciesReference * getModifier(unsigned int n) const
Returns the nth modifier species (as a ModifierSpeciesReference object) in the list of modifiers of t...
Definition Reaction.cpp:1219
const SpeciesReference * getReactant(unsigned int n) const
Returns the nth reactant species (as a SpeciesReference object) in the list of reactants in this Reac...
Definition Reaction.cpp:1133
Definition Rule.h:163
Definition SBMLDocument.h:351
unsigned int getNumErrors() const
Returns the number of errors or warnings encountered during parsing, consistency checking,...
Definition SBMLDocument.cpp:1169
void printErrors(std::ostream &stream=std::cerr) const
Prints all the errors or warnings encountered trying to parse, check, or translate this SBML document...
Definition SBMLDocument.cpp:1192
const Model * getModel() const
Returns the Model object stored in this SBMLDocument.
Definition SBMLDocument.cpp:350
Definition SBMLReader.h:343
SBMLDocument * readSBML(const std::string &filename)
Reads an SBML document from the given file.
Definition SBMLReader.cpp:112
int unsetAnnotation()
Unsets the value of the "annotation" subelement of this SBML object.
Definition SBase.cpp:2705
Definition Species.h:429
Definition SpeciesReference.h:281
Definition SpeciesType.h:109
Definition UnitDefinition.h:282
Utility functions.