Logo ROOT  
Reference Guide
TRemoteObject.h
Go to the documentation of this file.
1// @(#)root/base:$Id$
2// Author: Bertrand Bellenot 19/06/2007
3
4/*************************************************************************
5 * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11#ifndef ROOT_TRemoteObject
12#define ROOT_TRemoteObject
13
14//////////////////////////////////////////////////////////////////////////
15// //
16// TRemoteObject //
17// //
18// The TRemoteObject class provides protocol for browsing ROOT objects //
19// from a remote ROOT session. //
20// It contains information on the real remote object as: //
21// - Object Properties (i.e. file stat if the object is a TSystemFile) //
22// - Object Name //
23// - Class Name //
24// - TKey Object Name (if the remote object is a TKey) //
25// - TKey Class Name (if the remote object is a TKey) //
26// - Remote object address //
27// //
28//////////////////////////////////////////////////////////////////////////
29
30#include "TSystem.h"
31
32class TList;
33
34class TRemoteObject : public TNamed {
35
36protected:
37 FileStat_t fFileStat; // file status
38 Bool_t fIsFolder; // is folder flag
39 Long64_t fRemoteAddress; // remote address
40 TString fClassName; // real object class name
41 TString fKeyObjectName; // key object name
42 TString fKeyClassName; // key object class name
43
44public:
46 TRemoteObject(const char *name, const char *title, const char *classname);
47
48 virtual ~TRemoteObject();
49
50 virtual void Browse(TBrowser *b);
51 Bool_t IsFolder() const { return fIsFolder; }
52 TList *Browse();
54 const char *GetClassName() const { return fClassName.Data(); }
55 const char *GetKeyObjectName() const { return fKeyObjectName.Data(); }
56 const char *GetKeyClassName() const { return fKeyClassName.Data(); }
57 void SetFolder(Bool_t isFolder) { fIsFolder = isFolder; }
58 void SetKeyObjectName(const char *name) { fKeyObjectName = name; }
59 void SetKeyClassName(const char *name) { fKeyClassName = name; }
60 void SetRemoteAddress(Long_t addr) { fRemoteAddress = addr; }
61
62 ClassDef(TRemoteObject,0) //A remote object
63};
64
65#endif
66
#define b(i)
Definition: RSha256.hxx:100
long Long_t
Definition: RtypesCore.h:52
bool Bool_t
Definition: RtypesCore.h:61
long long Long64_t
Definition: RtypesCore.h:71
#define ClassDef(name, id)
Definition: Rtypes.h:322
char name[80]
Definition: TGX11.cxx:109
Using a TBrowser one can browse all ROOT objects.
Definition: TBrowser.h:37
A doubly linked list.
Definition: TList.h:44
The TNamed class is the base class for all named ROOT classes.
Definition: TNamed.h:29
The TRemoteObject class provides protocol for browsing ROOT objects from a remote ROOT session.
Definition: TRemoteObject.h:34
TString fClassName
Definition: TRemoteObject.h:40
void SetKeyClassName(const char *name)
Definition: TRemoteObject.h:59
void SetKeyObjectName(const char *name)
Definition: TRemoteObject.h:58
void SetRemoteAddress(Long_t addr)
Definition: TRemoteObject.h:60
virtual ~TRemoteObject()
Delete remote object.
TList * Browse()
Browse OS system directories.
const char * GetClassName() const
Definition: TRemoteObject.h:54
TString fKeyObjectName
Definition: TRemoteObject.h:41
Bool_t GetFileStat(FileStat_t *sbuf)
Get remote file status.
TRemoteObject()
Create a remote object.
Bool_t fIsFolder
Definition: TRemoteObject.h:38
const char * GetKeyObjectName() const
Definition: TRemoteObject.h:55
TString fKeyClassName
Definition: TRemoteObject.h:42
Long64_t fRemoteAddress
Definition: TRemoteObject.h:39
Bool_t IsFolder() const
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).
Definition: TRemoteObject.h:51
void SetFolder(Bool_t isFolder)
Definition: TRemoteObject.h:57
FileStat_t fFileStat
Definition: TRemoteObject.h:37
const char * GetKeyClassName() const
Definition: TRemoteObject.h:56
Basic string class.
Definition: TString.h:131
const char * Data() const
Definition: TString.h:364