00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef OMGALGORITHM_H
00021 #define OMGALGORITHM_H
00022
00023 #include <omgguid.h>
00024 #include <omgalgorithmparameter.h>
00025 #include "omgserialisable.h"
00026
00027 #include <QString>
00028 #include <QVector>
00029
00035 class OMG_LIB_EXPORT OmgAlgorithm : public OmgSerialisable, public OmgGuid
00036 {
00037 public:
00038 OmgAlgorithm();
00039 ~OmgAlgorithm();
00041 enum Origin {ADAPTERPROFILE=100,USERPROFILE=200,UNDEFINED=300};
00042
00043
00044 QString toHtml() const;
00045 int parameterCount();
00046
00047
00048
00049
00050
00056 QString toXml() const;
00061 bool fromXml(const QString theXml) ;
00062
00071 QString toModelCreationXml() const;
00083 QString toModelProjectionXml(QString theModel, QString theNormalization="") const;
00084
00085 QString toString() const;
00086
00087
00088 void setId(QString theId);
00089 void setName(QString theName);
00090 void setAuthor(QString theAuthor);
00091 void setCodeAuthor(QString theCodeAuthor);
00092 void setContact(QString theContact);
00093 void setVersion(QString theVersion);
00094 void setCategorical(int theCategorical);
00095 void setAbsence(int theAbsence);
00096 void setOverview(QString theOverview);
00097 void setDescription(QString theDescription);
00098 void setBibliography(QString theBibliography);
00099 void setParameters(QVector<OmgAlgorithmParameter> theParameters);
00100 void addParameter(OmgAlgorithmParameter theParameter);
00101 void setOrigin(Origin theOrigin);
00102
00103
00105 QString id();
00106 QString name() const;
00107 QString author();
00108 QString contact();
00109 QString codeAuthor();
00110 QString version();
00111 int categorical();
00112 int absence();
00113 QString overview();
00114 QString description();
00115 QString bibliography();
00116 QVector<OmgAlgorithmParameter> parameters();
00121 OmgAlgorithmParameter parameter(QString theId);
00122 Origin origin();
00123 private:
00124
00125 QString mId;
00126 QString mName;
00127 QString mAuthor;
00128 QString mCodeAuthor;
00129 QString mContact;
00130 QString mVersion;
00131 int mCategorical;
00132 int mAbsence;
00133 QString mOverview;
00134 QString mDescription;
00135 QString mBibliography;
00136 QVector<OmgAlgorithmParameter> mParameters;
00140 Origin mOrigin;
00141
00142 };
00143
00144 #endif //OMGALGORITHM_H