Commit 51703969 authored by Edward Moyse's avatar Edward Moyse Committed by Graeme Stewart
Browse files

'Fixed dictionary generation' (xAODAssociations-00-00-04)

parent cfa13a19
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
// Local include(s):
#include "xAODAssociations/versions/TrackParticleClusterAssociationAuxContainer_v1.h"
namespace xAOD {
TrackParticleClusterAssociationAuxContainer_v1::TrackParticleClusterAssociationAuxContainer_v1()
: AuxContainerBase() {
AUX_VARIABLE( trackParticleLink );
#ifndef XAOD_ANALYSIS
AUX_VARIABLE( caloClusterLinks );
#endif
}
} // namespace xAOD
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
// $Id: TrackParticleClusterAssociation_v1.cxx 636824 2014-12-18 16:56:34Z htorres $
// EDM include(s):
#include "xAODCore/AuxStoreAccessorMacros.h"
// Local include(s):
#include "xAODAssociations/versions/TrackParticleClusterAssociation_v1.h"
namespace xAOD {
TrackParticleClusterAssociation_v1::TrackParticleClusterAssociation_v1()
: SG::AuxElement() {
}
AUXSTORE_OBJECT_SETTER_AND_GETTER( TrackParticleClusterAssociation_v1, ElementLink< TrackParticleContainer >, trackParticleLink, setTrackParticleLink)
AUXSTORE_OBJECT_SETTER_AND_GETTER( TrackParticleClusterAssociation_v1, std::vector< ElementLink< CaloClusterContainer > >, caloClusterLinks, setCaloClusterLinks)
} // namespace xAOD
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
// EDM include(s):
#include "xAODCore/AddDVProxy.h"
// Local include(s):
#include "xAODAssociations/versions/TrackParticleClusterAssociationContainer_v1.h"
// Set up the collection proxies:
ADD_NS_DV_PROXY( xAOD, TrackParticleClusterAssociationContainer_v1 );
package xAODAssociations
author niels.van.eldik@cern.ch
author Edward.Moyse@cern.ch
author htorres@cern.ch
public
use AtlasPolicy AtlasPolicy-*
use AthContainers AthContainers-* Control
use AthLinks AthLinks-* Control
use xAODCore xAODCore-* Event/xAOD
use xAODTracking xAODTracking-* Event/xAOD
use xAODCaloEvent xAODCaloEvent-* Event/xAOD
private
use AtlasROOT AtlasROOT-* External
use AtlasReflex AtlasReflex-* External
end_private
library xAODAssociations ../Root/*.cxx
apply_pattern installed_library
private
apply_pattern lcgdict dict=xAODAssociations selectionfile=selection.xml \
headerfiles="../xAODAssociations/xAODAssociationsDict.h" \
extralibfiles=../Root/dict/*.cxx
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATION_H
#define XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATION_H
// Local include(s):
#include "versions/TrackParticleClusterAssociation_v1.h"
namespace xAOD {
/// Reference the current persistent version:
typedef TrackParticleClusterAssociation_v1 TrackParticleClusterAssociation;
}
// Set up a CLID for the class:
#include "xAODCore/CLASS_DEF.h"
CLASS_DEF( xAOD::TrackParticleClusterAssociation , 221270585 , 1 )
#endif // XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATION_H
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_H
#define XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_H
// Local include(s):
#include "xAODAssociations/versions/TrackParticleClusterAssociationAuxContainer_v1.h"
namespace xAOD {
/// Definition of the current Muon auxiliary container
///
/// All reconstruction code should attach the typedefed auxiliary
/// container to the xAOD::TrackParticleClusterAssociationContainer, so it will be easy to change
/// the container type as we get new I/O technologies for these
/// objects.
///
typedef TrackParticleClusterAssociationAuxContainer_v1 TrackParticleClusterAssociationAuxContainer;
}
// Set up a CLID for the class:
#include "xAODCore/CLASS_DEF.h"
CLASS_DEF( xAOD::TrackParticleClusterAssociationAuxContainer , 1108408842 , 1 )
#endif // XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_H
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_H
#define XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_H
// Local include(s):
#include "xAODAssociations/TrackParticleClusterAssociation.h"
#include "xAODAssociations/versions/TrackParticleClusterAssociationContainer_v1.h"
namespace xAOD {
/// Definition of the current "TrackParticleClusterAssociation container version"
typedef TrackParticleClusterAssociationContainer_v1 TrackParticleClusterAssociationContainer;
}
// Set up a CLID for the container:
#include "xAODCore/CLASS_DEF.h"
CLASS_DEF( xAOD::TrackParticleClusterAssociationContainer , 1245808135 , 1 )
#endif // XAODASSOCIATIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_H
<?xml version="1.0"?>
<lcgdict>
<!-- TrackParticleClusterAssociation_v1 dictionaries -->
<!-- <class pattern="*TrackParticleClusterAssociation*" /> -->
<class name="xAOD::TrackParticleClusterAssociation_v1"/>
<class name="DataVector<xAOD::TrackParticleClusterAssociation_v1>"/>
<class name="xAOD::TrackParticleClusterAssociationContainer_v1"
id="F2BC2005-C793-49E4-B79F-7848E732B284"/>
<class name="xAOD::TrackParticleClusterAssociationAuxContainer_v1"
id="1E0569F0-C3A0-4EB2-9264-85B8F1C10D26"/>
<!-- All smart pointer dictionaries for xAOD::TrackParticleClusterAssociation -->
<class name="DataLink<xAOD::TrackParticleClusterAssociationContainer_v1>" />
<class name="std::vector<DataLink<xAOD::TrackParticleClusterAssociationContainer_v1> >" />
<class name="ElementLink<xAOD::TrackParticleClusterAssociationContainer_v1>" />
<class name="std::vector<ElementLink<xAOD::TrackParticleClusterAssociationContainer_v1> >" />
<class name="std::vector<std::vector<ElementLink<xAOD::TrackParticleClusterAssociationContainer_v1> > >" />
<!-- Suppress the unwanted classes found by ROOT 6. -->
<!-- Hopefully we can remove these extra lines at one point... -->
<exclusion>
<class name="SG::IConstAuxStore" />
<class name="DataLink<SG::IConstAuxStore>" />
<class name="DataVector<xAOD::IParticle>" />
<class name="std::vector<ElementLink< TrackParticleContainer > >" />
<class name="std::vector<std::vector<ElementLink< CaloClusterContainer > > >" />
</exclusion>
</lcgdict>
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_V1_H
#define XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_V1_H
// Core include(s):
#include "xAODCore/AuxContainerBase.h"
#include "AthLinks/ElementLink.h"
// xAOD include(s):
#include "xAODTracking/TrackParticleContainer.h"
#include "xAODCaloEvent/CaloClusterContainer.h"
namespace xAOD {
/// Temporary container used until we have I/O for AuxStoreInternal
///
/// This class is meant to serve as a temporary way to provide an auxiliary
/// store with Athena I/O capabilities for the Muon EDM. Will be exchanged for
/// a generic auxiliary container type (AuxStoreInternal) later on.
///
/// @author Niels Van Eldik <niels.van.eldik@cern.ch>
/// @author Edward Moyse <Edward.Moyse@cern.ch>
/// @author Heberth Torres <htorres@cern.ch>
///
class TrackParticleClusterAssociationAuxContainer_v1 : public AuxContainerBase {
public:
/// Default constructor
TrackParticleClusterAssociationAuxContainer_v1();
private:
std::vector<ElementLink< TrackParticleContainer > > trackParticleLink;
std::vector<std::vector<ElementLink< CaloClusterContainer > > > caloClusterLinks;
}; // class TrackParticleClusterAssociationAuxContainer_v1
} // namespace xAOD
// Set up a StoreGate inheritance for the class:
#include "xAODCore/BaseInfo.h"
SG_BASE( xAOD::TrackParticleClusterAssociationAuxContainer_v1, xAOD::AuxContainerBase );
#endif // XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONAUXCONTAINER_V1_H
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_V1_H
#define XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_V1_H
// Core include(s):
#include "AthContainers/DataVector.h"
// Local include(s):
#include "xAODAssociations/versions/TrackParticleClusterAssociation_v1.h"
namespace xAOD {
/// The container is a simple typedef for now
typedef DataVector< xAOD::TrackParticleClusterAssociation_v1 > TrackParticleClusterAssociationContainer_v1;
}
#endif // XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATIONCONTAINER_V1_H
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATION_V1_H
#define XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATION_V1_H
// Core include(s):
#include "AthContainers/AuxElement.h"
#include "AthLinks/ElementLink.h"
// xAOD include(s):
#include "xAODTracking/TrackParticleContainer.h"
#include "xAODCaloEvent/CaloClusterContainer.h"
namespace xAOD {
/// Class describing a TrackParticleClusterAssociation.
///
/// @author Niels Van Eldik <niels.van.eldik@cern.ch>
/// @author Edward Moyse <Edward.Moyse@cern.ch>
/// @author Heberth Torres <htorres@cern.ch>
/// @nosubgrouping
///
class TrackParticleClusterAssociation_v1 : public SG::AuxElement {
public:
/// Default constructor
TrackParticleClusterAssociation_v1();
/// @name Links
/// Returns
/// @{
/// Returns
const ElementLink< TrackParticleContainer >& trackParticleLink() const;
/// Sets
void setTrackParticleLink(const ElementLink< TrackParticleContainer >& trackParticleLink);
/// @}
/// @name Links
/// Returns
/// @{
/// Returns
const std::vector< ElementLink< CaloClusterContainer > >& caloClusterLinks() const;
/// Sets
void setCaloClusterLinks(const std::vector< ElementLink< CaloClusterContainer > >& caloClusterLinks);
/// @}
}; // end of the TrackParticleClusterAssociation_v1 class definitions
} // end of the xAOD namespace
#endif // XAODASSOCIATIONS_VERSIONS_TRACKPARTICLECLUSTERASSOCIATION_V1_H
// Dear emacs, this is -*- c++ -*-
/*
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
*/
#ifndef XAODASSOCIATIONS_XAODASSOCIATIONSDICT_H
#define XAODASSOCIATIONS_XAODASSOCIATIONSDICT_H
// Needed to successfully generate the dictionary in standalone mode:
#if defined(__GCCXML__) and not defined(EIGEN_DONT_VECTORIZE)
# ifndef EIGEN_DONT_VECTORIZE
# define EIGEN_DONT_VECTORIZE
# endif
#endif // __GCCXML__
// Local include(s):
#include "xAODAssociations/TrackParticleClusterAssociationContainer.h"
#include "xAODAssociations/TrackParticleClusterAssociationAuxContainer.h"
// EDM include(s):
#include "AthLinks/DataLink.h"
#include "AthLinks/ElementLink.h"
namespace {
struct GCCXML_DUMMY_INSTANTIATION_XAODASSOCIATIONS {
// Classes in this package
xAOD::TrackParticleClusterAssociation o1;
xAOD::TrackParticleClusterAssociationContainer c1;
// Links for this package
DataLink< xAOD::TrackParticleClusterAssociationContainer > l1;
ElementLink< xAOD::TrackParticleClusterAssociationContainer > l2;
std::vector< DataLink< xAOD::TrackParticleClusterAssociationContainer > > l3;
std::vector< ElementLink< xAOD::TrackParticleClusterAssociationContainer > > l4;
std::vector< std::vector< ElementLink< xAOD::TrackParticleClusterAssociationContainer > > > l5;
// Instantiations of links used by this package
ElementLink< xAOD::TrackParticleContainer > i1;
ElementLink< xAOD::CaloClusterContainer > i2;
std::vector< ElementLink< xAOD::CaloClusterContainer > > i3;
};
}
#endif // XAODASSOCIATIONS_XAODASSOCIATIONSDICT_H
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment