Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

AlgHandle.h

Go to the documentation of this file.
00001 
00002 // $Id: AlgHandle.h,v 1.8 2003/05/13 05:06:21 gmieg Exp $
00003 //
00004 // AlgHandle.h
00005 //
00006 // AlgHandle is the user access channel for AlgBase derived objects.
00007 //
00008 // Author:  G. Irwin 2/2000
00010 
00011 #ifndef ALGHANDLE_H
00012 #define ALGHANDLE_H
00013 
00014 #include "TNamed.h"
00015 #include "TRef.h"
00016 
00017 class AlgBase;
00018 class AlgConfig;
00019 class CandHandle;
00020 class CandContext;
00021 
00022 class AlgHandle : public TNamed
00023 {
00024 
00025 public:
00026    AlgHandle();
00027    AlgHandle(AlgBase *ab, TRef &acr);
00028    AlgHandle(const AlgHandle &ah);
00029    virtual ~AlgHandle();
00030    AlgBase &GetAlgBase() {return *fAlgBase;}
00031    AlgConfig &GetAlgConfig();
00032    TRef &GetAlgConfigRef() const;
00033    virtual const char *GetName() const;
00034    void RunAlg(CandHandle &ch, CandContext &cx);
00035 
00036 private:
00037    AlgBase *fAlgBase;                     
00038    TRef fAlgConfigRef;   // TRef to AlgConfig owned by factory loan pool
00039 
00040 ClassDef(AlgHandle,2)         // User Access channel for AlgBase objects
00041 
00042 };
00043 
00044 #endif                                                    // ALGHANDLE_H

Generated on Mon Feb 15 11:06:19 2010 for loon by  doxygen 1.3.9.1