// Author: Wim Lavrijsen   March 2008

#ifndef ROOT_TPySelector
#define ROOT_TPySelector

//////////////////////////////////////////////////////////////////////////////
//                                                                          //
// TPySelector                                                              //
//                                                                          //
// Python base class equivalent of PROOF TSelector.                         //
//                                                                          //
//////////////////////////////////////////////////////////////////////////////


//- ROOT
#ifndef ROOT_TSelector
#include "TSelector.h"
#endif

#ifndef ROOT_TTree
#include "TTree.h"
#endif

// Python
struct _object;
typedef _object PyObject;


class TPySelector : public TSelector {
public:
   TTree* fChain;

public:
// ctor/dtor ... cctor and assignment are private in base class
   TPySelector( TTree* /* tree */ = 0, PyObject* self = 0 );
   virtual ~TPySelector();

// TSelector set of forwarded (overridden) methods
   virtual Int_t  Version() const;
   virtual Int_t  GetEntry( Long64_t entry, Int_t getall = 0 );
   virtual Bool_t Notify();

   virtual void   Init( TTree* tree );
   virtual void   Begin( TTree* /* tree */ );
   virtual void   SlaveBegin( TTree* tree );
   virtual Bool_t Process( Long64_t entry );
   virtual void   SlaveTerminate();
   virtual void   Terminate();

   virtual void Abort( const char* why, EAbort what = kAbortProcess );

   ClassDef( TPySelector, 1 );   //Python equivalent base class for PROOF

private:
// private helpers for forwarding to python
   void SetupPySelf();
   void CallSelf( const char* method );

private:
   PyObject* fPySelf;              //! actual python object
};

#endif

Last change: Wed Jun 25 08:51:35 2008
Last generated: 2008-06-25 08:51

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.