CMS 3D CMS Logo

BasicMultiVertexState.h

Go to the documentation of this file.
00001 #ifndef BasicMultiVertexState_H
00002 #define BasicMultiVertexState_H
00003 
00004 #include "RecoVertex/VertexPrimitives/interface/BasicVertexState.h"
00005 #include "RecoVertex/VertexPrimitives/interface/VertexState.h"
00006 #include "RecoVertex/GaussianSumVertexFit/interface/MultiVertexStateCombiner.h"
00007 
00012 class BasicMultiVertexState : public BasicVertexState {
00013 
00014 public:
00015 
00018   BasicMultiVertexState() {}
00019 
00020   BasicMultiVertexState(const std::vector<VertexState>& vsComp);
00021 
00024   virtual BasicMultiVertexState* clone() const
00025   {
00026     return new BasicMultiVertexState(*this);
00027   }
00028 
00032   GlobalPoint position() const;
00033 
00038   GlobalError error() const;
00039 
00044   GlobalWeight weight() const;
00045 
00049   AlgebraicVector3 weightTimesPosition() const;
00050 
00055   double weightInMixture() const;
00056 
00057 //   /** conversion to VertexSeed
00058 //    */
00059 //   RefCountedVertexSeed seedWithoutTracks() const;
00060 
00064   virtual std::vector<VertexState> components() const {
00065     return theComponents;
00066   }
00067 
00068 private:
00069 
00070   void checkCombinedState() const;
00071 
00072   mutable std::vector<VertexState> theComponents;
00073   mutable VertexState theCombinedState;
00074   mutable bool theCombinedStateUp2Date;
00075 
00076   MultiVertexStateCombiner theCombiner;
00077 
00078 };
00079 
00080 #endif

Generated on Tue Jun 9 17:46:05 2009 for CMSSW by  doxygen 1.5.4