From 01ef784401c997aee973c2fd68e3b630aedd5bf2 Mon Sep 17 00:00:00 2001 From: Jean-Francois Laporte <laport@hep.saclay.cea.fr> Date: Wed, 6 Jul 2011 16:16:42 +0200 Subject: [PATCH] Updating 01-37-72 (AmdcOracle-01-37-72) --- .../AmdcOracle/AmdcOracle/AmdcDumpOracle.h | 107 + .../AmdcOracle/AmdcOracle/AmdcOracleMisc.h | 36 + .../Amdcsimrec/AmdcOracle/cmt/requirements | 24 + .../Amdcsimrec/AmdcOracle/doc/mainpage.h | 40 + .../AmdcOracle/share/AmdcOracle_jobOptions.py | 24 + .../AmdcOracle/src/AmdcDumpOracle.cxx | 2946 +++++++++++++++++ .../src/components/AmdcOracle_entries.cxx | 9 + .../src/components/AmdcOracle_load.cxx | 4 + 8 files changed, 3190 insertions(+) create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcDumpOracle.h create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcOracleMisc.h create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/cmt/requirements create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/doc/mainpage.h create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/share/AmdcOracle_jobOptions.py create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/src/AmdcDumpOracle.cxx create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_entries.cxx create mode 100755 MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_load.cxx diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcDumpOracle.h b/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcDumpOracle.h new file mode 100755 index 000000000000..9a2f41a48716 --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcDumpOracle.h @@ -0,0 +1,107 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#ifndef AmdcDumpOracle_H +#define AmdcDumpOracle_H + +#include "AthenaBaseComps/AthAlgorithm.h" +#include "GaudiKernel/ToolHandle.h" +#include "GaudiKernel/ServiceHandle.h" + +///////////////////////////////////////////////////////////////////////////// +#include "AmdcOracle/AmdcOracleMisc.h" + +class IRDBAccessSvcWithUpdate; +class IRDBAccessSvc; + + /** + @class AmdcDumpOracle + + This class checks the content of Oracle tables + + @author samusog@cern.ch + + */ + +class AmdcDumpOracle:public AthAlgorithm { +public: + AmdcDumpOracle (const std::string& name, ISvcLocator* pSvcLocator); + +public: +/////////////////////////////////// + + StatusCode initialize(); + StatusCode execute(); + StatusCode finalize(); + + StatusCode DoItCallback(IOVSVC_CALLBACK_ARGS); + +private: +/////////////////////////////////// + + void DumpASZT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpISZT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpAPTP( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpALMN( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpALIN( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWMDT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWSPA( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWSUP( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWCHV( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWCMI( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWCRO( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWLBI( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWDED( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpASMP( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpDBAM( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWCSC( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpATLN( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpGGLN( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWTGC( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpAWLN( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpWRPC( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpACUT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpATYP( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpAGDD( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpAMDC( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpABRT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpAECT( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpECST( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpFEET( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpGENV( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpJDSH( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpJFSH( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpJTSH( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + void DumpMBAP( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd , int& Kwarn, int& Kchck ); + + void DumpAgddXMLVariables( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd ,int& Kwarn, int& Kchck ); + + void DumpHwSwIdMapping( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd ,int& Kwarn, int& Kchck ); + + void DumpXtomoData( IRDBAccessSvc* pIRDBAccessSvc , std::string TagAdd ,int& Kwarn, int& Kchck ); + + + bool m_IRDBAccessSvcWithUpdateUpdatedSvcDONE ; //!< status of p_IRDBAccessSvcWithUpdate + + + int m_SwitchOff ; //!< Control execution + + int m_WarningLevel ; //!< Warning Level + + int m_EmergencyOut ; //!< Optional stop at the end of initialisation + + int m_AsNewTableOn ; //!< Control sql prod + int m_UseKeysOn ; //!< Control sql prod + + int m_KountCallsDoIt ; //!< Kount calls to DoIt + + ServiceHandle<IRDBAccessSvcWithUpdate> p_IRDBAccessSvcWithUpdate; //!< Pointer On IRDBAccessSvcWithUpdate + + StatusCode regFcnDoIt(); + StatusCode DoIt(); + +}; + +#endif + diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcOracleMisc.h b/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcOracleMisc.h new file mode 100755 index 000000000000..f3dbb38c4777 --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/AmdcOracle/AmdcOracleMisc.h @@ -0,0 +1,36 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +// +#ifndef AmdcOracleMisc_H +#define AmdcOracleMisc_H + +#ifdef HAVE_NEW_IOSTREAMS +//gcc3.2 +#include <sstream> +#include <iostream> +#include <iomanip> +#include <fstream> +#else +//gcc 295 +#include <iostream.h> +#include <iomanip.h> +#include <fstream.h> +#endif +#if HAVE_CXX_STDC_HS +# include <cstdio> +# include <cmath> +#else +# include <stdio.h> +# include <math.h> +#endif +#include <algorithm> +#include <iterator> +#include <list> +#include <vector> +#include <map> +#include <string> +#include <utility> + +#endif diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/cmt/requirements b/MuonSpectrometer/Amdcsimrec/AmdcOracle/cmt/requirements new file mode 100755 index 000000000000..fde5c9dbdaae --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/cmt/requirements @@ -0,0 +1,24 @@ +package AmdcOracle + +author Marc Virchaux <virchaux@hep.saclay.cea.fr> + +use AtlasPolicy AtlasPolicy-* + +use GaudiInterface GaudiInterface-* External + +use AthenaBaseComps AthenaBaseComps-* Control + + +private + +use RDBAccessSvc RDBAccessSvc-* Database/AthenaPOOL + +use AmdcDb AmdcDb-* MuonSpectrometer/Amdcsimrec + +public + +apply_pattern dual_use_library files="*.cxx" + +apply_pattern declare_joboptions files="*.txt *.py" + + diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/doc/mainpage.h b/MuonSpectrometer/Amdcsimrec/AmdcOracle/doc/mainpage.h new file mode 100755 index 000000000000..e7a09516f59a --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/doc/mainpage.h @@ -0,0 +1,40 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +/** + +@mainpage AmdcOracle Package + +@author samusog@cern.ch + +@section IntroductionAmdcOracle Introduction + +AmdcOracle is a package of the Amdcsimrec package. +It checks the content of Oracle tables + +A documentation in pdf format is available in +the CVS repository of the package in the sub dir doc/ + +@section OverviewAmdcOracle Class Overview + +The AmdcOracle package contains: + + - AmdcDumpOracle checks the content of Oracle tables + +@section ExtrasAmdcOracle Extra Pages + + - @ref used_AmdcOracle + - @ref requirements_AmdcOracle + +*/ + +/** +@page used_AmdcOracle Used Packages +@htmlinclude used_packages.html +*/ + +/** +@page requirements_AmdcOracle Requirements +@include requirements +*/ diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/share/AmdcOracle_jobOptions.py b/MuonSpectrometer/Amdcsimrec/AmdcOracle/share/AmdcOracle_jobOptions.py new file mode 100755 index 000000000000..a191ce256350 --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/share/AmdcOracle_jobOptions.py @@ -0,0 +1,24 @@ +include.block ( "AmdcOracle/AmdcOracle_jobOptions.py" ) +#-------------------------------------------------------------- +# AmdcOracle +#-------------------------------------------------------------- +#load AmdcDb +include( "AmdcDb/AmdcDb_jobOptions.py" ) + +from AmdcOracle.AmdcOracleConf import AmdcDumpOracle +topSequence += AmdcDumpOracle() + +theAmdcDumpOracle = topSequence.AmdcDumpOracle + +#if 1 do nothing +theAmdcDumpOracle.SwitchOff = 1 + +#Print Level +theAmdcDumpOracle.WarningLevel = 1 + +#if 1 initialize() return FAILURE to speed up analysis +theAmdcDumpOracle.EmergencyOut = 1 + +#Set sql prod +theAmdcDumpOracle.AsNewTableOn = 0 ; +theAmdcDumpOracle.UseKeysOn = 1 ; diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/AmdcDumpOracle.cxx b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/AmdcDumpOracle.cxx new file mode 100755 index 000000000000..f3900e2a2281 --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/AmdcDumpOracle.cxx @@ -0,0 +1,2946 @@ +/* + Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration +*/ + +#include "GaudiKernel/AlgFactory.h" +#include "GaudiKernel/ISvcLocator.h" +#include "GaudiKernel/PropertyMgr.h" + +#include "GaudiKernel/SmartDataPtr.h" +#include "GaudiKernel/IDataProviderSvc.h" + +#include "RDBAccessSvc/IRDBAccessSvc.h" +#include "RDBAccessSvc/IRDBRecord.h" +#include "RDBAccessSvc/IRDBRecordset.h" + +///////////////////////////////////////////////////////// +#include "AmdcDb/IRDBAccessSvcWithUpdate.h" + +#include "AmdcOracle/AmdcDumpOracle.h" + +#include "AmdcDb/AmdcDbRecord.h" + +#include "AmdcDb/AmdcDb2Sql.h" + +AmdcDumpOracle::AmdcDumpOracle(const std::string& name, ISvcLocator* pSvcLocator) : + AthAlgorithm(name, pSvcLocator), +p_IRDBAccessSvcWithUpdate ( "AmdcDb",name ) +{ + + m_IRDBAccessSvcWithUpdateUpdatedSvcDONE = false ; + +//Set Default values + m_KountCallsDoIt = 0 ; + +//Declare the properties + declareProperty("SwitchOff" , m_SwitchOff = 1 ) ; + declareProperty("WarningLevel" , m_WarningLevel = 1 ) ; + declareProperty("EmergencyOut" , m_EmergencyOut = 0 ) ; + declareProperty("AsNewTableOn" , m_AsNewTableOn = 0 ) ; + declareProperty("UseKeysOn" , m_UseKeysOn = 1 ) ; + + } + +// Initialize +StatusCode AmdcDumpOracle::initialize(){ + + StatusCode sc ; + ATH_MSG_INFO( "Initialisation started " ) ; + + + ATH_MSG_INFO( "================================" ) ; + ATH_MSG_INFO( "=Proprieties are " ) ; + if (m_SwitchOff == 0) { + ATH_MSG_INFO( "= WarningLevel " << m_WarningLevel ) ; + ATH_MSG_INFO( "= EmergencyOut " << m_EmergencyOut ) ; + ATH_MSG_INFO( "= AsNewTableOn " << m_AsNewTableOn ) ; + ATH_MSG_INFO( "= UseKeysOn " << m_UseKeysOn ) ; + } + ATH_MSG_INFO( "= SwitchOff " << m_SwitchOff ) ; + ATH_MSG_INFO( "================================" ) ; + + + if (m_SwitchOff == 0) { + +// Retrieve p_IRDBAccessSvcWithUpdate and set up call back + if ( p_IRDBAccessSvcWithUpdate.retrieve().isFailure() ) { + ATH_MSG_FATAL( "Failed to retrieve service " << p_IRDBAccessSvcWithUpdate ) ; + return StatusCode::FAILURE; + } + ATH_MSG_INFO( "Retrieved service " << p_IRDBAccessSvcWithUpdate ) ; + + if (p_IRDBAccessSvcWithUpdate->InitializedSvc()) { + ATH_MSG_INFO( "p_IRDBAccessSvcWithUpdate->InitializedSvc() is true " ) ; + m_IRDBAccessSvcWithUpdateUpdatedSvcDONE = true ; + }else{ + ATH_MSG_INFO( "p_IRDBAccessSvcWithUpdate->InitializedSvc() is false " ) ; + + sc=regFcnDoIt(); + if ( sc.isFailure() ) { + ATH_MSG_FATAL("regFcnDoIt failed" ) ; + return StatusCode::FAILURE; + } + ATH_MSG_INFO( "Done: regFcnDoIt " ) ; + + } + +// Do something now if possible + if ( m_IRDBAccessSvcWithUpdateUpdatedSvcDONE ){ + ATH_MSG_INFO( "m_IRDBAccessSvcWithUpdateUpdatedSvcDONE found true in initialize " ) ; + StatusCode sc = DoIt() ; + if ( sc.isFailure() ) { + ATH_MSG_FATAL( "DoIt failed" ) ; + return StatusCode::FAILURE; + } + } + + } + + ATH_MSG_INFO( "Initialisation ended " ) ; + if ( m_EmergencyOut == 1 ) return StatusCode::FAILURE; + return StatusCode::SUCCESS; + +} + +// Do it +StatusCode AmdcDumpOracle::DoItCallback(IOVSVC_CALLBACK_ARGS) +{ + ATH_MSG_INFO( "DoItCallback called " ) ; + + if ( !(p_IRDBAccessSvcWithUpdate->UsableSvc()) ) { + ATH_MSG_INFO( "BUT p_IRDBAccessSvcWithUpdate found NOT usable yet " ) ; + return StatusCode::SUCCESS; + }else{ + m_IRDBAccessSvcWithUpdateUpdatedSvcDONE = true ; + ATH_MSG_INFO( "AND p_IRDBAccessSvcWithUpdate found usable " ) ; + } + + StatusCode sc = DoIt() ; + if ( sc.isFailure() ) { + ATH_MSG_FATAL( "DoIt failed" ) ; + return StatusCode::FAILURE; + } + + return StatusCode::SUCCESS; + +} + +StatusCode AmdcDumpOracle::regFcnDoIt() +{ + + StatusCode sc = detStore()->regFcn( + &IRDBAccessSvcWithUpdate::UpdatedSvc,dynamic_cast<IRDBAccessSvcWithUpdate*>(&*p_IRDBAccessSvcWithUpdate), + &AmdcDumpOracle::DoItCallback,this,true + ); + if (sc.isFailure()) { + ATH_MSG_FATAL( "Unable to register callback on AmdcDumpOracle::DoItCallback from IRDBAccessSvcWithUpdate::UpdatedSvc " ) ; + return StatusCode::FAILURE; + } + ATH_MSG_INFO( "Done: Register callback on AmdcDumpOracle::DoItCallback from IRDBAccessSvcWithUpdate::UpdatedSvc " ) ; + + return StatusCode::SUCCESS; + +} +StatusCode AmdcDumpOracle::DoIt() +{ + ATH_MSG_INFO( "DoIt called " ) ; + + if ( !m_IRDBAccessSvcWithUpdateUpdatedSvcDONE ){ + ATH_MSG_INFO( "DoIt() called BUT m_IRDBAccessSvcWithUpdateUpdatedSvcDONE is false " ) ; + return StatusCode::SUCCESS; + } + + if (m_SwitchOff == 0) { + +// Count calls + m_KountCallsDoIt = m_KountCallsDoIt + 1 ; + std::string KountCallsDoItASstring = "" ; + std::stringstream KountCallsDoItASstringstream; + KountCallsDoItASstringstream << m_KountCallsDoIt ; + if (m_KountCallsDoIt > 1 ) KountCallsDoItASstring = KountCallsDoItASstringstream.str(); + +// Control ouput names + std::string StringBidon = ""; + +// Outout sql files + AmdcDb2Sql aAmdcDb2Sql; + aAmdcDb2Sql.SetAsNewTableOn(m_AsNewTableOn); + aAmdcDb2Sql.SetUseKeysOn(m_UseKeysOn); + + StringBidon = "Out.AmdcOracle.DB" + KountCallsDoItASstring ; + aAmdcDb2Sql.DoIt(StringBidon,"RDB",(&*p_IRDBAccessSvcWithUpdate)); + + StringBidon = "Out.AmdcOracle.AM" + KountCallsDoItASstring ; + aAmdcDb2Sql.DoIt(StringBidon,"Amdc",(&*p_IRDBAccessSvcWithUpdate)); + +// Check contents + StringBidon = "Out.AmdcOracle" + KountCallsDoItASstring ; + std::ofstream OutFile; + OutFile.open(StringBidon.c_str()); + OutFile << setiosflags(std::ios::fixed); + + int Kwarn = 0 ; + int Kchck = 0 ; + int KwarnTot = 0 ; + int KchckTot = 0 ; + +// Check ASZT + Kwarn = 0 ; + Kchck = 0 ; + DumpASZT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ASZT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ISZT + Kwarn = 0 ; + Kchck = 0 ; + DumpISZT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ISZT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check APTP + Kwarn = 0 ; + Kchck = 0 ; + DumpAPTP((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "APTP: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ALMN + Kwarn = 0 ; + Kchck = 0 ; + DumpALMN((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ALMN: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ALIN + Kwarn = 0 ; + Kchck = 0 ; + DumpALIN((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ALIN: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WMDT + Kwarn = 0 ; + Kchck = 0 ; + DumpWMDT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WMDT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WSPA + Kwarn = 0 ; + Kchck = 0 ; + DumpWSPA((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WSPA: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WSUP + Kwarn = 0 ; + Kchck = 0 ; + DumpWSUP((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WSUP: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WCHV + Kwarn = 0 ; + Kchck = 0 ; + DumpWCHV((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WCHV: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WCMI + Kwarn = 0 ; + Kchck = 0 ; + DumpWCMI((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WCMI: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WCRO + Kwarn = 0 ; + Kchck = 0 ; + DumpWCRO((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WCRO: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WLBI + Kwarn = 0 ; + Kchck = 0 ; + DumpWLBI((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WLBI: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WDED + Kwarn = 0 ; + Kchck = 0 ; + DumpWDED((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WDED: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ASMP + Kwarn = 0 ; + Kchck = 0 ; + DumpASMP((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ASMP: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check DBAM + Kwarn = 0 ; + Kchck = 0 ; + DumpDBAM((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "DBAM: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WCSC + Kwarn = 0 ; + Kchck = 0 ; + DumpWCSC((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WCSC: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ATLN + Kwarn = 0 ; + Kchck = 0 ; + DumpATLN((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ATLN: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check GGLN + Kwarn = 0 ; + Kchck = 0 ; + DumpGGLN((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "GGLN: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WTGC + Kwarn = 0 ; + Kchck = 0 ; + DumpWTGC((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WTGC: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check AWLN + Kwarn = 0 ; + Kchck = 0 ; + DumpAWLN((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "AWLN: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check WRPC + Kwarn = 0 ; + Kchck = 0 ; + DumpWRPC((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "WRPC: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ACUT + Kwarn = 0 ; + Kchck = 0 ; + DumpACUT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ACUT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check ATYP + Kwarn = 0 ; + Kchck = 0 ; + DumpATYP((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "ATYP: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check AGDD + Kwarn = 0 ; + Kchck = 0 ; + DumpAGDD((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "AGDD: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check AMDC + Kwarn = 0 ; + Kchck = 0 ; + DumpAMDC((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "AMDC: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// // Check ABRT +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpABRT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "ABRT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check AECT +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpAECT((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "AECT: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check ECST +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpECST((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "ECST: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check FEET +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpFEET((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "FEET: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check GENV +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpGENV((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "GENV: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check JDSH +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpJDSH((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "JDSH: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check JFSH +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpJFSH((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "JFSH: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check JTSH +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpJTSH((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "JTSH: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; +// +// // Check MBAP +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpMBAP((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "MBAP: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; + +// // Check AgddXMLVariables +// Kwarn = 0 ; +// Kchck = 0 ; +// DumpAgddXMLVariables((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); +// KwarnTot = KwarnTot + Kwarn ; +// KchckTot = KchckTot + Kchck ; +// OutFile +// << "AgddXMLVariables: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " +// << std::endl; + + +// Check HwSwIdMapping + Kwarn = 0 ; + Kchck = 0 ; + DumpHwSwIdMapping((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "HwSwIdMapping: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + +// Check XtomoData + Kwarn = 0 ; + Kchck = 0 ; + DumpXtomoData((&*p_IRDBAccessSvcWithUpdate),KountCallsDoItASstring,Kwarn,Kchck); + KwarnTot = KwarnTot + Kwarn ; + KchckTot = KchckTot + Kchck ; + OutFile + << "XtomoData: " << Kwarn << " Warnings " << " for " << Kchck << " tested elements " + << std::endl; + + OutFile + << "Summary: " << KwarnTot << " Warnings " << " for " << KchckTot << " tested elements " + << std::endl; + + OutFile.close(); + + } + + return StatusCode::SUCCESS; + +} + +StatusCode AmdcDumpOracle::execute() {return StatusCode::SUCCESS;} + +StatusCode AmdcDumpOracle::finalize() {return StatusCode::SUCCESS;} + +void AmdcDumpOracle::DumpASZT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ASZT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("TYP",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JFF",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JZZ",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JOB",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpISZT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ISZT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("TYP",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JFF",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JZZ",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JOB",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JLAY",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAPTP( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){\ + + std::string NameOfTheSet = "APTP"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + for (int DB_JFF=1; DB_JFF<=8 ; DB_JFF++){ + int DB_JFF_Shifted = DB_JFF - 1 ; + std::ostringstream Aostringstream; + Aostringstream << DB_JFF_Shifted ; + std::string DbVar = "IPHI_"+Aostringstream.str(); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable(DbVar,pAmdcDbRecordFromRDB); + } + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("TYP",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("IZ",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpALMN( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ALMN"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JTYP",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("INDX",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JOB",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpALIN( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ALIN"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + +//DRING: here, because sub line is missing, there is no other way than going assuming that tables are parallel + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end() && itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromRDB++,itFromAmdc++){ + + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWMDT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WMDT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("IW",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWSPA( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WSPA"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWSUP( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WSUP"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWCHV( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WCHV"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWCMI( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WCMI"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWCRO( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WCRO"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWLBI( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WLBI"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWDED( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WDED"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpASMP( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ASMP"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("INDX",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JTYP",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpDBAM( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "DBAM"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWCSC( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WCSC"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpATLN( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ATLN"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("I",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpGGLN( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "GGLN"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWTGC( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WTGC"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAWLN( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "AWLN"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JSTA",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpWRPC( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "WRPC"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpACUT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ACUT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + +//DRING: here, because JTYP is missing, there is no other way than going assuming that tables are parallel + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end() && itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromRDB++,itFromAmdc++){ + + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpATYP( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ATYP"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("JTYP",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAGDD( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "AGDD"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAMDC( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "AMDC"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpABRT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ABRT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAECT( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "AECT"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpECST( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "ECST"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpFEET( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "FEET"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpGENV( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "GENV"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + + +void AmdcDumpOracle::DumpJDSH( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "JDSH"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpJFSH( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "JFSH"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpJTSH( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "JTSH"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpMBAP( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "MBAP"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpAgddXMLVariables( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "AgddXMLVariables"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("NameOfVariable",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpHwSwIdMapping( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "HwSwIdMapping"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("HARDNAME",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} + +void AmdcDumpOracle::DumpXtomoData( IRDBAccessSvc* pIRDBAccessSvc, std::string TagAdd, int& Kwarn,int& Kchck){ + + std::string NameOfTheSet = "XtomoData"; + + std::ofstream OutFile; + std::string FileName = "Out.AmdcOracle."+ TagAdd + NameOfTheSet; + OutFile.open(FileName.c_str()); + OutFile << setiosflags(std::ios::fixed); + OutFile << "Checking " << NameOfTheSet << " content started" << std::endl; + Kwarn = -1 ; + Kchck = 0 ; + + const IRDBRecordset* pIRDBRecordsetFromRDB = pIRDBAccessSvc->getRecordset(NameOfTheSet,"RDB"); + if (pIRDBRecordsetFromRDB->size() == 0){ + OutFile << "No " << NameOfTheSet << " in RDB " << std::endl; + return; + } + + const IRDBRecordset* pIRDBRecordsetFromAmdc = pIRDBAccessSvc->getRecordset(NameOfTheSet,"Amdc"); + if (pIRDBRecordsetFromAmdc->size() == 0){ + OutFile << "No " << NameOfTheSet << " in Amdc " << std::endl; + return; + } + + Kwarn = 0 ; + + std::vector<IRDBRecord*>::const_iterator itFromRDB = pIRDBRecordsetFromRDB->begin(); + for ( ; itFromRDB<pIRDBRecordsetFromRDB->end(); itFromRDB++){ + const AmdcDbRecord* pAmdcDbRecordFromRDB = dynamic_cast<const AmdcDbRecord*>((*itFromRDB)); + if (pAmdcDbRecordFromRDB == 0){ + OutFile << "No way to cast pAmdcDbRecordFromRDB for " << NameOfTheSet << std::endl; + return; + } + int Ifound = 0 ; + std::vector<IRDBRecord*>::const_iterator itFromAmdc = pIRDBRecordsetFromAmdc->begin(); + for ( ; itFromAmdc<pIRDBRecordsetFromAmdc->end(); itFromAmdc++){ + if (Ifound==1) continue; + + Ifound = 1; + + const AmdcDbRecord* pAmdcDbRecordFromAmdc = dynamic_cast<const AmdcDbRecord*>((*itFromAmdc)); + if (pAmdcDbRecordFromAmdc == 0){ + OutFile << "No way to cast pAmdcDbRecordFromAmdc for " << NameOfTheSet << std::endl; + return; + } + + if (Ifound == 1) Ifound = pAmdcDbRecordFromAmdc->doWeMatchForThisVariable("XtomoChberName",pAmdcDbRecordFromRDB); + + if (Ifound == 1) pAmdcDbRecordFromAmdc->doIMatch(m_WarningLevel,Kwarn,Kchck,OutFile,pAmdcDbRecordFromRDB); + + } + + if (Ifound!=1){ + Kwarn = Kwarn + 1; + OutFile << "WARNING: No way to check " << pAmdcDbRecordFromRDB->getUniversalId() << std::endl; + } + + } + + OutFile << "Checking " << NameOfTheSet << " content ended" << std::endl; + + OutFile.close(); + +} diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_entries.cxx b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_entries.cxx new file mode 100755 index 000000000000..c7bdb031e6e9 --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_entries.cxx @@ -0,0 +1,9 @@ +#include "GaudiKernel/DeclareFactoryEntries.h" +#include "AmdcOracle/AmdcDumpOracle.h" + +DECLARE_ALGORITHM_FACTORY( AmdcDumpOracle ) + +DECLARE_FACTORY_ENTRIES( AmdcOracle ) { + DECLARE_ALGORITHM( AmdcDumpOracle ); +} + diff --git a/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_load.cxx b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_load.cxx new file mode 100755 index 000000000000..e8dd2c6e931c --- /dev/null +++ b/MuonSpectrometer/Amdcsimrec/AmdcOracle/src/components/AmdcOracle_load.cxx @@ -0,0 +1,4 @@ +#include "GaudiKernel/LoadFactoryEntries.h" + +LOAD_FACTORY_ENTRIES( AmdcOracle ) + -- GitLab