Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2021-02-14 13:08:24

0001 #ifndef ExampleClass_H
0002 #define ExampleClass_H
0003 
0004 /** \class ExampleClass
0005  *  An example of doxygen-documented class conforming to the CMS style rules.
0006  *
0007  *  Features:<br>
0008  *  -doxygen-style header (note the \class directive)<br>
0009  *  -doxygen-like member function documentation<br>
0010  *  -Few setters and getters
0011  *
0012  *  $Date: $
0013  *  $Revision: $
0014  *  \author W. Woodpecker - CERN
0015  */
0016 
0017 #include <vector>
0018 
0019 class SomeAlgorithm;
0020 
0021 
0022 class ExampleClass {
0023  public:
0024   /// Constructor
0025   ExampleClass();
0026 
0027   /// Virtual Destructor
0028   virtual ~ExampleClass();
0029 
0030   /// A simple setter
0031   void setCount(int ticks);
0032 
0033   /// A simple getter
0034   int count() const;
0035 
0036   /// Another setter 
0037   void setValues(const std::vector<float>& entries);
0038 
0039   /// A getter returning a const reference
0040   const std::vector<float>& values() const;
0041 
0042   /// A member function
0043   float computeMean() const;
0044 
0045  protected:  
0046 
0047  private:
0048   int   theCount;          //< An int data member 
0049   std::vector<float> theValues; //< A vector data member
0050   SomeAlgorithm * theAlgo; //< A pointer data member
0051 
0052 };
0053 #endif // ExampleClass_H