Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

qarm/qsimplearmtran.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 2005 MyARM GbR, Germany
00003  * All rights reserved.
00004  * 
00005  * Redistribution and use in source and binary forms, with or 
00006  * without modification, are permitted provided that the 
00007  * following conditions are met:
00008  * 1. Redistributions of source code must retain the above
00009  *    copyright notice, this list of conditions and the
00010  *    following disclaimer.
00011  * 2. Redistributions in binary form must reproduce the above
00012  *    copyright notice, this list of conditions and the
00013  *    following disclaimer in the documentation and/or other
00014  *    materials provided with the distribution.
00015  * 3. All advertising materials mentioning features or use of
00016  *    this software must display the following acknowledgement:
00017  *        This product includes software developed by
00018  *        MyARM GbR and its contributors.
00019  * 4. Neither the name of MyARM GbR nor the names of its
00020  *    contributors may be used to endorse or promote products
00021  *    derived from this software without specific prior written
00022  *    permission.
00023  * 
00024  * THIS SOFTWARE IS PROVIDED BY MYARM GBR. AND CONTRIBUTORS 
00025  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT
00026  * NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
00027  * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT
00028  * SHALL MYARM OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
00029  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00030  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
00031  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
00032  * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
00033  * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
00034  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
00035  * THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
00036  * OF SUCH DAMAGE.
00037  */
00038 
00039 #ifndef QSIMPLEARMTRAN_H
00040 #define QSIMPLEARMTRAN_H
00041 
00048 #include <cstdlib>
00049 
00050 #include <QString>
00051 #include <QObject>
00052 #include <QList>
00053 
00054 #include <QArmTransaction>
00055 #include <QArmMetric>
00056 #include <QArmMetricList>
00057 
00061 class QSimpleArmNumId : public QArmMetric {
00062 public:
00068   QSimpleArmNumId(const QString & _name,
00069                   const QString & _unit);
00070 };
00071 
00075 class QSimpleArmCounter : public QArmMetric {
00076 public:
00082   QSimpleArmCounter(const QString & _name,
00083                     const QString & _unit);
00084 };
00085 
00089 class QSimpleArmGauge : public QArmMetric {
00090 public:
00096   QSimpleArmGauge(const QString & _name,
00097                   const QString & _unit);
00098 };
00099 
00109 class QSimpleArmTran : public QArmTransaction {
00110   
00111  Q_OBJECT
00112 
00113 public:
00121   QSimpleArmTran(const QString        & _name,
00122                  QSimpleArmTran       * _parent = 0,
00123                  const QArmMetricList * _metric_bindings = 0);
00127   ~QSimpleArmTran();
00128   
00129 public slots:
00134   void start();
00142   void start(QArmMetricList *_metric_values);
00147   void stop(const QArmTransaction::QArmStatus _status = QArmTransaction::GOOD);
00148 
00149 };
00150 
00151 #endif

Generated on Thu Dec 15 19:14:20 2005 for QArm API by  doxygen 1.4.2