00001
00002
00003 #ifndef XAODROOTACCESS_TOOLS_TFILECHECKER_H
00004 #define XAODROOTACCESS_TOOLS_TFILECHECKER_H
00005
00006
00007 #include <set>
00008 #include <string>
00009
00010
00011 #include <TObject.h>
00012
00013
00014 #include "xAODRootAccess/tools/TReturnCode.h"
00015
00016
00017 namespace SG {
00018 class AuxVectorBase;
00019 }
00020
00021 namespace xAOD {
00022
00023
00024 class TEvent;
00025
00037 class TFileChecker : public ::TObject {
00038
00039 public:
00041 TFileChecker();
00042
00044 TReturnCode check( TEvent& event );
00045
00047 void setStopOnError( ::Bool_t value );
00049 ::Bool_t stopOnError() const;
00050
00052 void addIgnoredVariable( const std::string& name );
00054 void setIgnoredVariables( const std::set< std::string >& value );
00056 const std::set< std::string >& ignoredVariables() const;
00057
00058 private:
00060 TReturnCode checkContainer( const SG::AuxVectorBase& vec,
00061 const std::string& name );
00062
00064 ::Bool_t m_stopOnError;
00066 std::set< std::string > m_ignoredVariables;
00067
00069 std::set< std::string > m_orpannedContainers;
00070
00071 ClassDef( xAOD::TFileChecker, 0 )
00072
00073 };
00074
00075 }
00076
00077 #endif // XAODROOTACCESS_TOOLS_TFILECHECKER_H