CMS 3D CMS Logo

/data/doxygen/doxygen-1.7.3/gen/CMSSW_4_2_8/src/Alignment/CommonAlignmentAlgorithm/interface/AlignmentExtendedCorrelationsEntry.h

Go to the documentation of this file.
00001 #ifndef Alignment_CommonAlignmentAlgorithm_AlignmentExtendedCorrelationsEntry_h
00002 #define Alignment_CommonAlignmentAlgorithm_AlignmentExtendedCorrelationsEntry_h
00003 
00004 #include <vector>
00005 #include "DataFormats/CLHEP/interface/AlgebraicObjects.h"
00006 
00007 
00011 
00012 
00013 class AlignmentExtendedCorrelationsEntry
00014 {
00015 
00016 public:
00017 
00019   AlignmentExtendedCorrelationsEntry( void );
00020 
00022   explicit AlignmentExtendedCorrelationsEntry( short unsigned int nRows, short unsigned int nCols );
00023 
00025   explicit AlignmentExtendedCorrelationsEntry( short unsigned int nRows, short unsigned int nCols, const float init );
00026 
00028   explicit AlignmentExtendedCorrelationsEntry( const AlgebraicMatrix& mat );
00029 
00031   ~AlignmentExtendedCorrelationsEntry( void ) {}
00032 
00034   inline float& operator()( short unsigned int iRow, short unsigned int jCol ) { return theData[iRow*theNCols+jCol]; }
00035 
00037   inline const float operator()( short unsigned int iRow, short unsigned int jCol ) const { return theData[iRow*theNCols+jCol]; }
00038 
00040   inline const short unsigned int numRow( void ) const { return theNRows; }
00041 
00043   inline const short unsigned int numCol( void ) const { return theNCols; }
00044 
00046   void operator*=( const float multiply );
00047 
00049   AlgebraicMatrix matrix( void ) const;
00050 
00051 //   /// Get the counter's value.
00052 //   inline const int counter( void ) const { return theCounter; }
00053 
00054 //   /// Increase the counter's value by 1.
00055 //   inline void incrementCounter( void ) { ++theCounter; }
00056 
00057 //   /// Decrease the counter's value by 1.
00058 //   inline void decrementCounter( void ) { --theCounter; }
00059 
00060 private:
00061 
00062 //   int theCounter;
00063 
00064   short unsigned int theNRows;
00065   short unsigned int theNCols;
00066 
00067   std::vector< float > theData;
00068 
00069 };
00070 
00071 #endif