////////////////////////////////////////////////////////////////////////
/// \class RAT::DS::FitVertex
///
/// \brief Container class for a single fit vertex
///
/// \author Phil G Jones
/// \author Matthew Mottram -- contact person
///
/// REVISION HISTORY:\n
/// - 27/04/2011 : P G Jones - New file
/// - 19/08/2013 : P G Jones - Added validity flag for all values.
/// - 10/09/2013 : K Majumdar - Adding in ability to do asymmetric errors and errors in Spherical coordinates
/// - 2014-02-26 : P G Jones - DS Review refactor
/// - 2014-08-01 : M Mottram - Added fixed parameter flags
/// - 2014-09-15 : M Mottram - Added getter for validity mask
/// - 2014-11-22 : M Mottram - Bug fix in SetMask methods to correctly unset bits
/// - 2015-03-23 : M Mottram - Added SetMask method (previously SetXXXValid only set values to true)
/// - 2016-07-01 : M J Parnell - Added ContainsAny method, and removed uneeded ContainsXXX checks
///
/// \details This class contains a fit vertex.
/// There are two masks that describe the status of the values,
/// the dataMask describes whether the value has been set i.e.
/// if the value exists. The validMask describes whether the
/// value is valid.
///
////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////
/// \class RAT::DS::FitVertex::NoValueError
///
/// \brief An exception that is thrown when a user attempts to retrieve
/// a value that was not fit.
///
/// \author Phil G Jones
///
/// REVISION HISTORY:\n
/// 27/04/2011 : P G Jones - New file \n
///
/// \details As brief
///
////////////////////////////////////////////////////////////////////////
#ifndef __RAT_DS_FitVertex_
#define __RAT_DS_FitVertex_
#include
#include
#include