restorePVGroupXMLParser.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008 #include <config.h>
00009
00010 #if HAVE_LIBQTXML
00011
00012 #ifndef RESTOREPVGROUPXMLPARSER_H
00013 #define RESTOREPVGROUPXMLPARSER_H
00014
00015 #include "PVGroup.h"
00016
00017
00018 #include <QtXml/QXmlDefaultHandler>
00019
00020
00021 class restorePVGroupXMLParser : public QXmlDefaultHandler {
00022 public:
00023 restorePVGroupXMLParser();
00024 virtual ~restorePVGroupXMLParser();
00025
00026 bool startElement(const QString& namespaceURI, const QString& localName, const QString& qName, const QXmlAttributes& atts);
00027 bool endElement(const QString& namespaceURI, const QString& localName, const QString& qName);
00028 bool characters(const QString& ch);
00029
00030 PVGroup group;
00031 private:
00032 enum
00033 {
00034 NotWaiting,
00035 WaitingForConfig,
00036 WaitingForNPV,
00037 WaitingForGroup,
00038 WaitingForDescription,
00039 WaitingForStatusGroup,
00040 WaitingForMember,
00041 WaitingForName,
00042 WaitingForNelem,
00043 WaitingForStatus,
00044 WaitingForRule,
00045 WaitingForVal,
00046 WaitingForSettable
00047 } state;
00048
00049
00050 PVDataHolder * pvd;
00051 bool settable;
00052 unsigned int icount;
00053
00054 const static QString& tagConfig;
00055 const static QString& tagGroup;
00056 const static QString& tagNPV;
00057 const static QString& tagDescription;
00058 const static QString& tagStatusGroup;
00059 const static QString& tagMember;
00060 const static QString& tagName;
00061 const static QString& tagNelem;
00062 const static QString& tagStatus;
00063 const static QString& tagRule;
00064 const static QString& tagVal;
00065 const static QString& tagSettable;
00066
00067 };
00068
00069
00070
00071 #endif
00072
00073 #endif
00074