libSBML C++ API  libSBML 5.8.0 C++ API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SBMLWriter.h File Reference

Detailed Description

Writes an SBML Document to file or in-memory string.

Author
Ben Bornstein
Include dependency graph for SBMLWriter.h:
This graph shows which files directly or indirectly include this file:

Classes

class  SBMLWriter
 Methods for writing SBML to files and text strings. More...
 

Functions

int writeSBML (const SBMLDocument_t *d, const char *filename)
 Writes the given SBML document d to the file named by filename. More...
 
int writeSBMLToFile (const SBMLDocument_t *d, const char *filename)
 Writes the given SBML document d to the file filename. More...
 
char * writeSBMLToString (const SBMLDocument_t *d)
 Writes the given SBML document d to an in-memory string and returns the string. More...
 

Function Documentation

int writeSBML ( const SBMLDocument_t d,
const char *  filename 
)

Writes the given SBML document d to the file named by filename.

This function is identical to SBMLWriter::writeSBMLToFile (const SBMLDocument_t *d, const char *filename).

If the given filename ends with the suffix ".gz" (for example, "myfile.xml.gz"), libSBML assumes the caller wants the file to be written compressed in gzip format. Similarly, if the given filename ends with ".zip" or ".bz2", libSBML assumes the caller wants the file to be compressed in zip or bzip2 format (respectively). Files whose names lack these suffixes will be written uncompressed. Special considerations for the zip format: If the given filename ends with ".zip", the file placed in the zip archive will have the suffix ".xml" or ".sbml". For example, the file in the zip archive will be named "test.xml" if the given filename is "test.xml.zip" or "test.zip". Similarly, the filename in the archive will be "test.sbml" if the given filename is "test.sbml.zip".
Parameters
dthe SBMLDocument object to be written out in XML format
filenamea string giving the path to a file where the XML content is to be written.
Returns
1 on success and 0 (zero) if filename could not be written. Some possible reasons for failure include (a) being unable to open the file, and (b) using a filename that indicates a compressed SBML file (i.e., a filename ending in ".zip" or similar) when the compression functionality has not been enabled in the underlying copy of libSBML.
Warning
Note that the string is owned by the caller and should be freed (with the normal string free() C++ function) after it is no longer needed.
See Also
SBMLWriter::hasZlib()
SBMLWriter::hasBzip2()

Writes the given SBML document d to the file named by filename.

This convenience function is functionally equivalent to:

SBMLWriter_writeSBML(SBMLWriter_create(), d, filename);

Returns
non-zero on success and zero if the filename could not be opened for writing.
int writeSBMLToFile ( const SBMLDocument_t d,
const char *  filename 
)

Writes the given SBML document d to the file filename.

This is a convenience function that uses the SBMLWriter::writeSBMLToFile(const SBMLDocument* d, const std::string& filename) method internally, yet does not require the caller to create an SBMLWriter object first.

If the given filename ends with the suffix ".gz" (for example, "myfile.xml.gz"), libSBML assumes the caller wants the file to be written compressed in gzip format. Similarly, if the given filename ends with ".zip" or ".bz2", libSBML assumes the caller wants the file to be compressed in zip or bzip2 format (respectively). Files whose names lack these suffixes will be written uncompressed. Special considerations for the zip format: If the given filename ends with ".zip", the file placed in the zip archive will have the suffix ".xml" or ".sbml". For example, the file in the zip archive will be named "test.xml" if the given filename is "test.xml.zip" or "test.zip". Similarly, the filename in the archive will be "test.sbml" if the given filename is "test.sbml.zip".
Parameters
dan SBMLDocument object to be written out in XML format
filenamea string giving the path to a file where the XML content is to be written.
Returns
1 on success and 0 (zero) if filename could not be written. Some possible reasons for failure include (a) being unable to open the file, and (b) using a filename that indicates a compressed SBML file (i.e., a filename ending in ".zip" or similar) when the compression functionality has not been enabled in the underlying copy of libSBML.
Warning
Note that the string is owned by the caller and should be freed (with the normal string free() C++ function) after it is no longer needed.
See Also
SBMLWriter::hasZlib()
SBMLWriter::hasBzip2()

Writes the given SBML document d to the file filename.

This convenience function is functionally equivalent to:

SBMLWriter_writeSBMLToFile(SBMLWriter_create(), d, filename);

Returns
non-zero on success and zero if the filename could not be opened for writing.
char* writeSBMLToString ( const SBMLDocument_t d)

Writes the given SBML document d to an in-memory string and returns the string.

This is a convenience function that uses the SBMLWriter::writeSBMLToString(const SBMLDocument* d) method internally, yet does not require the caller to create an SBMLWriter object first.

Parameters
dan SBMLDocument object to be written out in XML format
Returns
the string on success and NULL if one of the underlying parser components fail.
Warning
Note that the string is owned by the caller and should be freed (with the normal string free() C++ function) after it is no longer needed.

Writes the given SBML document d to an in-memory string and returns the string.

The string is owned by the caller and should be freed (with free()) when no longer needed. This convenience function is functionally equivalent to:

SBMLWriter_writeSBMLToString(SBMLWriter_create(), d);

Returns
the string on success and NULL if one of the underlying parser components fail (rare).