Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

IProperty.h

Go to the documentation of this file.
00001 // $Header: /afs/cern.ch/sw/Gaudi/cvs/GaudiKernel/GaudiKernel/IProperty.h,v 1.5 2001/03/15 00:46:14 mato Exp $
00002 #ifndef GAUDIKERNEL_IPROPERTY_H
00003 #define GAUDIKERNEL_IPROPERTY_H
00004 
00005 // Include Files
00006 #include "GaudiKernel/IInterface.h"
00007 #include <iostream>
00008 #include <string>
00009 #include <vector>
00010 
00011 // Declaration of the interface ID ( interface id, major version, minor version) 
00012 static const InterfaceID IID_IProperty(20, 2 , 0); 
00013 
00023 class Property;
00024 
00025 class IProperty : virtual public IInterface  {
00026 public:
00028   static const InterfaceID& interfaceID() { return IID_IProperty; }
00029   
00031   virtual StatusCode setProperty( const Property& p // Reference to the input property
00032                                 ) = 0;
00034   virtual StatusCode setProperty( std::istream& s ) = 0;
00036   virtual StatusCode setProperty( const std::string& n, const std::string& v ) = 0;
00038   virtual StatusCode getProperty( Property* p       // Pointer to property to be set
00039                                 ) const = 0;
00041   virtual const Property& getProperty( const std::string& name  // Property name
00042                                 ) const = 0;
00044   virtual StatusCode getProperty( const std::string& n, std::string& v ) const = 0;
00046   virtual const std::vector<Property*>& getProperties( ) const = 0;
00047 };
00048 #endif  // GAUDIKERNEL_IPROPERTY_H
00049 
00050 

Generated on Wed May 1 14:11:31 2002 for AtlfastAlgs by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001