#ifndef _CLIENT_H_ #define _CLIENT_H_ #include #include #include #include #include #include #include "commandlineparser.h" #include "time-stat.h" class CommandListArgs { public: CommandListArgs(const QString &arguments, const QString &helpText); CommandListArgs(); ~CommandListArgs(); QString args; QString help; }; class Client : public QObject { Q_OBJECT public: Client(); ~Client(); bool initialize(const CommandLineParser &commandParser); static uint32_t parseResourceList(QString resourceListStr); private slots: void resourceAcquiredHandler(const QList& grantedResList); void resourceDeniedHandler(); void resourceLostHandler(); void resourceReleasedHandler(); void resourcesBecameAvailableHandler(const QList &availableResources); void readLine(int); void doExit(); private: QTextStream standardInput; QSocketNotifier stdInNotifier; int mainTimerID; QString applicationClass; ResourcePolicy::ResourceSet *resourceSet; QTextStream output; static QMap commandList; ResourcePolicy::Resource* allocateResource(ResourcePolicy::ResourceType resource, bool optional); ResourcePolicy::ResourceType getResourceType(uint32_t resource); void showPrompt(); void showResources(const QList &resList); void showResources(const QList &resList); }; #endif