RDFSection.h

Go to the documentation of this file.
00001 // -*- Mode: C++; tab-width: 2; -*-
00002 // vi: set ts=2:
00003 //
00004 // $Id: RDFSection.h,v 1.16 2005/12/23 17:02:01 amoll Exp $
00005 //
00006 
00007 #ifndef BALL_STRUCTURE_RDFSECTION_H
00008 #define BALL_STRUCTURE_RDFSECTION_H
00009 
00010 #ifndef BALL_STRUCTURE_RADIALDISTRIBUTIONFUNCTION_H
00011 # include <BALL/STRUCTURE/radialDistributionFunction.h>
00012 #endif
00013 
00014 #ifndef BALL_FORMAT_PARAMETERSECTION_H
00015 # include <BALL/FORMAT/parameterSection.h>
00016 #endif
00017 
00018 namespace BALL
00019 {
00023   class BALL_EXPORT RDFSection
00024     : public ParameterSection
00025   {
00026     public:
00027 
00028     BALL_CREATE(RDFSection)
00029 
00030     
00033 
00034     enum Type
00035     {
00036       UNKNOWN_TYPE = 0,
00037       PIECEWISE_POLYNOMIAL = 1
00038     };
00039 
00041 
00044 
00047     RDFSection() ;
00048 
00051     RDFSection(const RDFSection& rdf_section) ;
00052 
00055     virtual ~RDFSection() ;
00056 
00058 
00061 
00063     const RDFSection& operator = (const RDFSection& rdf_section) ;
00064 
00067     virtual void clear() ;
00068 
00070 
00073 
00075     virtual bool extractSection(Parameters& parameters, const String& section_name) 
00076       ;
00077     
00079 
00082 
00085     const RadialDistributionFunction& getRDF() const ;
00086 
00088 
00091 
00094     bool operator == (const RDFSection& section) const ;
00095 
00097 
00098     protected:
00099 
00100     /*_ The RDF that is to be read from a section */
00101     RadialDistributionFunction rdf_;
00102   
00103   };
00104    
00105 } // namespace BALL
00106 
00107 
00108 #endif //  BALL_STRUCTURE_RDFSECTION_H