#ifndef _PCOMMANDLIST_H_
#define _PCOMMANDLIST_H_
#include "TObjString.h"
class PCommandList : public TObjString {
private:
TObjString fCmd;
TObjString fNext;
PCommandList *fNextP;
Int_t fLevel;
TObjString fTool;
public:
PCommandList();
PCommandList(TString name);
PCommandList(TString name, TString cmd);
PCommandList(TObject *obj, TString name, TString cmd);
~PCommandList();
const char *GetCmd() const {
return fCmd.GetString().Data();
};
Bool_t AddCommand(const char *cmd, const char *basename = NULL, int level = 0);
Bool_t AddCommand(TObject *obj, const char *cmd, const char *basename = NULL, int level = 0);
Bool_t GetCommand(char **cmd, int level = 0, TObject **obj = NULL);
using TObject::Write;
Int_t Write(const char *name, Int_t option, Int_t bufsize) const;
void Print(const Option_t *delme = NULL) const;
ClassDef(PCommandList, 1)
};
#endif