00001 // @(#)root/clarens:$Id: TClarens.h 20882 2007-11-19 11:31:26Z rdm $ 00002 // Author: Maarten Ballintijn 21/10/2004 00003 // Author: Kris Gulbrandsen 21/10/2004 00004 00005 /************************************************************************* 00006 * Copyright (C) 1995-2005, Rene Brun and Fons Rademakers. * 00007 * All rights reserved. * 00008 * * 00009 * For the licensing terms see $ROOTSYS/LICENSE. * 00010 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00011 *************************************************************************/ 00012 00013 #ifndef ROOT_TClarens 00014 #define ROOT_TClarens 00015 00016 ////////////////////////////////////////////////////////////////////////// 00017 // // 00018 // TClarens // 00019 // // 00020 // // 00021 ////////////////////////////////////////////////////////////////////////// 00022 00023 #ifndef ROOT_TObject 00024 #include "TObject.h" 00025 #endif 00026 00027 00028 class TGM; 00029 class TLM; 00030 class TSAM; 00031 class TEcho; 00032 class THashList; 00033 class TClSession; 00034 00035 00036 class TClarens : public TObject { 00037 private: 00038 Long_t fTimeout; //timeout on xmlrpc calls 00039 THashList *fSessions; //lsit of clarens sessions by URL 00040 00041 TClarens(); 00042 00043 TClSession *Connect(const Char_t *url); 00044 00045 public: 00046 virtual ~TClarens(); 00047 00048 void SetTimeout(Long_t msec) {fTimeout = msec;} 00049 Int_t GetTimeout() const {return fTimeout;} 00050 00051 TEcho *CreateEcho(const Char_t *echoUrl); 00052 TGM *CreateGM(const Char_t *gmUrl); 00053 TLM *CreateLM(const Char_t *lmUrl); 00054 TSAM *CreateSAM(const Char_t *samUrl); 00055 00056 static void Init(); 00057 00058 ClassDef(TClarens,0); // Clarens main interface 00059 }; 00060 00061 00062 R__EXTERN TClarens *gClarens; 00063 00064 #endif