rarStrParser.hh

Go to the documentation of this file.
00001 /*****************************************************************************
00002 * Project: BaBar detector at the SLAC PEP-II B-factory
00003 * Package: RooRarFit
00004  *    File: $Id: rarStrParser.rdl,v 1.6 2011/06/16 13:18:50 fwilson Exp $
00005  * Authors: Lei Zhang
00006  * History:
00007  *
00008  * Copyright (C) 2005-2012, University of California, Riverside
00009  *****************************************************************************/
00010 #ifndef RAR_STRPARSER
00011 #define RAR_STRPARSER
00012 
00013 #include "TList.h"
00014 #include "TString.h"
00015 // #include "TObject.h"
00016 #include "RooFitCore/RooStringVar.hh"
00017 
00018 class TObjString;
00019 
00027 class rarStrParser : public TObject {
00028   
00029 public:
00030   rarStrParser();
00031   rarStrParser(const char *str);
00032   rarStrParser(const TString str);
00033   rarStrParser(const rarStrParser&);
00034   virtual ~rarStrParser();
00035   void operator=(const char *str);
00036   void operator=(const TString str);
00037   void operator=(const RooStringVar str);
00038   TString &operator[](const Int_t idx);
00039   void Remove(const Int_t idx=0);
00040   Int_t Index(const TString token);
00041   Bool_t Have(const TString token);
00042   
00045   Int_t nArgs() {return _strs.GetSize();}
00046   
00047 protected:
00048   void init();
00049   TObjString *nextToken();
00050   
00051   TString _str; 
00052   TList _strs; 
00053   
00054 private:
00055   Int_t _idx; 
00056   ClassDef(rarStrParser, 0) // RooRarFit String Parser class
00057     ;
00058 };
00059 
00060 #endif

Generated on 30 Oct 2013 for RooRarFit by  doxygen 1.4.7