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

AIDA_BaseHistogram.h

Go to the documentation of this file.
00001 // Emacs -*- C++ -*-
00002 #ifndef ANAPHE_AIDABASEHISTOGRAM
00003 #define ANAPHE_AIDABASEHISTOGRAM 1
00004 
00005 #include "AIDA/IBaseHistogram.h"
00006 #include "AIDA_Dev/IDevManagedObject.h"
00007 
00008 namespace Anaphe {
00009   namespace AIDA_Histogram_native {
00010 
00020 class AIDA_BaseHistogram : virtual public AIDA::IBaseHistogram,
00021                            virtual public AIDA::Dev::IDevManagedObject
00022 {
00023 protected:
00025   AIDA_BaseHistogram( const std::string& title,
00026                       const std::string& classType,
00027                       int dimension );
00028 
00029 public:
00031   virtual ~AIDA_BaseHistogram();
00032 
00034   const std::string& title() const;
00035   bool setTitle( const std::string& title );
00036   AIDA::IAnnotation& annotation();
00037   const AIDA::IAnnotation& annotation() const;
00038   int dimension() const;
00039 
00047 
00048   bool isUpToDate() const;
00049   void setUpToDate( bool isUpToDate );
00050   bool setName( const std::string& newName );
00051   const std::string& userLevelClassType() const;
00052   
00054   const std::string& name() const;
00055 
00056 protected:
00058   AIDA::IAnnotation& annotationNoUpdate();
00059   const AIDA::IAnnotation& annotationNoUpdate() const;
00061   virtual void updateAnnotation() const;
00062   AIDA::IAnnotation* createAnnotation();
00063 
00064 private:
00065   AIDA::IAnnotation*           m_annotation;
00066   std::string                  m_classType;
00067   int                          m_dimension;
00068   bool                         m_upToDate;
00069 };
00070 
00071   }
00072 }
00073 
00074 
00076 #include "AIDA_BaseHistogram.inl"
00077 
00078 #endif /* ifndef ANAPHE_AIDABASEHISTOGRAM */

Generated on Tue Nov 19 12:32:15 2002 for AIDA_Histogram_native by doxygen1.2.16