- Author:
- Matthias K?nig <matthias.koenig@charite.de>
- Date:
- 2013-04-21 20:13:13+02:00
- Desc:
- Nazaret 2009 example implemented and integratable.
Results between normal and MCL implementation not identical ! Problems with original model implementation (no steady state)!
- Permanent Source URI:
- https://staging.physiomeproject.org/w/matthiaskoenig/MetabolicComponentLibrary/rawfile/f963a33d3d8fb4ce27a9e04729b5038282db7623/CellML-source/CellMLTools/cpp_rdf/cellmlfile.h
//==============================================================================
// CellML file class
//==============================================================================
#ifndef CELLMLFILE_H
#define CELLMLFILE_H
//==============================================================================
#include "cellmlfileissue.h"
#include "cellmlfilerdftriple.h"
#include "cellmlfileruntime.h"
#include "cellmlsupportglobal.h"
//==============================================================================
#include <QObject>
//==============================================================================
namespace OpenCOR {
namespace CellMLSupport {
//==============================================================================
class CELLMLSUPPORT_EXPORT CellmlFile : public QObject
{
Q_OBJECT
public:
explicit CellmlFile(const QString &pFileName);
~CellmlFile();
iface::cellml_api::Model * model() const;
iface::rdf_api::DataSource * rdfDataSource() const;
bool load();
bool reload();
bool save(const QString &pNewFileName = QString());
bool isValid();
bool isModified() const;
void setModified(const bool &pModified) const;
CellmlFileIssues issues() const;
CellmlFileRuntime * runtime();
QString fileName() const;
CellmlFileRdfTriples * rdfTriples();
QString uriBase() const;
CellmlFileRdfTriples rdfTriples(const QString &pCmetaId) const;
private:
QString mFileName;
ObjRef<iface::cellml_api::Model> mModel;
ObjRef<iface::rdf_api::RDFAPIRepresentation> mRdfApiRepresentation;
ObjRef<iface::rdf_api::DataSource> mRdfDataSource;
QString mUriBase;
CellmlFileRdfTriples mRdfTriples;
bool mValid;
CellmlFileIssues mIssues;
CellmlFileRuntime *mRuntime;
bool mLoadingNeeded;
bool mValidNeeded;
bool mRuntimeUpdateNeeded;
void reset();
void clearRdfTriples();
};
//==============================================================================
} // namespace CellMLSupport
} // namespace OpenCOR
//==============================================================================
#endif
//==============================================================================
// End of file
//==============================================================================