Skip to content
Snippets Groups Projects
Commit 2de8b44d authored by Tim Martin's avatar Tim Martin
Browse files

Move HLTUtils class from Trigger/TrigSteer/TrigCompositeUtils to Trigger/TrigConfiguration/HLTUtils

Place it in its own package with its own small library

This lets it be used by R2 and R3 framework code, while shielding its library from any Gaudi dependencies.
parent 56a92fde
No related branches found
No related tags found
No related merge requests found
Showing
with 52 additions and 22 deletions
# Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration.
# Declare the package name.
atlas_subdir( HLTUtils )
# Add the package's stand alone library
atlas_add_library( HLTUtilsLib
HLTUtils/*.h Root/*.cxx
PUBLIC_HEADERS HLTUtils
LINK_LIBRARIES CxxUtils )
# Executable(s).
atlas_add_executable( trigconf_string2hash
util/trigconf_string2hash.cxx
LINK_LIBRARIES HLTUtilsLib )
Trigger/TrigConfiguration/HLTUtils
......@@ -2,8 +2,8 @@
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
*/
#ifndef TrigCompositeUtils_HLTUtils
#define TrigCompositeUtils_HLTUtils
#ifndef HLTUtils_HLTUtils
#define HLTUtils_HLTUtils
#include <string>
#include <inttypes.h>
......
# HLTUtils
Package to host the `string2hash`, `hash2string`, `hashes2file` and `file2hashes` helper functions.
In Run 2 these were hosted in the `Trigger/TriConfiguration/TrigConfHLTData` package along with Run 2 specific trigger element helper functions.
For Run 3, the deprecated trigger element helper functions are moved under a new `HLTTEUtils` class, the hashing helper functions remain under the `HLTUtils` class and move into this package.
This package cannot have any Gaudi dependencies.
......@@ -13,7 +13,7 @@
#include <vector>
#include <fstream>
#include "TrigCompositeUtils/HLTUtils.h"
#include "HLTUtils/HLTUtils.h"
#include "CxxUtils/checker_macros.h"
using namespace TrigConf;
......
......@@ -3,7 +3,7 @@
*/
#include <iostream>
#include "TrigCompositeUtils/HLTUtils.h"
#include "HLTUtils/HLTUtils.h"
int main (int argc, char *argv []) {
if (argc > 1) {
......
......@@ -9,7 +9,7 @@ atlas_subdir( TrigConfHLTData )
# Declare the package's dependencies:
atlas_depends_on_subdirs( PUBLIC
Trigger/TrigConfiguration/TrigConfL1Data
Trigger/TrigSteer/TrigCompositeUtils )
Trigger/TrigConfiguration/HLTUtils )
# External dependencies:
find_package( Boost COMPONENTS system thread )
......
......@@ -3,10 +3,10 @@
*/
/// Hashing functions have moved here
#include "TrigCompositeUtils/HLTUtils.h"
#include "HLTUtils/HLTUtils.h"
#ifndef TrigConf_HLTUtils
#define TrigConf_HLTUtils
#ifndef TrigConfHLTData_HLTUtils
#define TrigConfHLTData_HLTUtils
#include <string>
#include <inttypes.h>
......@@ -24,7 +24,7 @@ namespace TrigConf {
class HLTFrame;
/**
* @brief HLTUtils is renamed in r22 toHLTTEUtils. The hashing functionality remains in HLTUtils, which moves to the TrigCompositeUtils package
* @brief HLTUtils is renamed in r22 to HLTTEUtils. The hashing functionality remains in HLTUtils, which moves to the standalone HLTUtils package
*/
class HLTTEUtils {
......
......@@ -12,26 +12,15 @@ if( NOT XAOD_STANDALONE )
xAODTrigger )
endif()
# Add the package's stand alone library
atlas_add_library( HLTUtilsLib
TrigCompositeUtils/HLTUtils.h Root/HLTUtils.cxx
PUBLIC_HEADERS TrigCompositeUtils
LINK_LIBRARIES CxxUtils )
# Add the package's dual use library.
atlas_add_library( TrigCompositeUtilsLib
TrigCompositeUtils/HLTIdentifier.h TrigCompositeUtils/Combinators.h TrigCompositeUtils/TrigCompositeUtils.h TrigCompositeUtils/TrigCompositeUtils.icc Root/HLTIdentifier.cxx Root/Combinators.cxx ${extra_srcs}
TrigCompositeUtils/*.h TrigCompositeUtils/*.icc Root/*.cxx ${extra_srcs}
PUBLIC_HEADERS TrigCompositeUtils
LINK_LIBRARIES HLTUtilsLib CxxUtils AsgMessagingLib ${extra_libs} )
# Install files from the package.
atlas_install_python_modules( python/*.py )
# Executable(s).
atlas_add_executable( trigconf_string2hash
util/trigconf_string2hash.cxx
LINK_LIBRARIES HLTUtilsLib )
# Unit test(s).
if( NOT XAOD_STANDALONE )
atlas_add_test( TrigCompositeUtils_test
......
# TrigCompositeUtils
Package to host helper classes used both online in HLT execution and offline in the analysis of the HLT result.
## TrigCompositeUtils
Quality of life helpers and navigation helpers to aid in creating and interpreting `xAOD::TrigComposite` (also known as `Decision`) objects linked together to form a directed acyclic graph structure. This graph is referred to as the trigger navigation.
## HLTIdentifier
Wrapper function around a HLT chain's name (or chain's leg's name), allowing easier access to both the `std::string` and hashed `uint32_t` representations along with iostream functions.
## Combinators
Placeholder for combinatoric iteration helper code over combined chains
......@@ -2,7 +2,7 @@
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
*/
#include "TrigCompositeUtils/HLTUtils.h"
#include "HLTUtils/HLTUtils.h"
#include "TrigCompositeUtils/HLTIdentifier.h"
using namespace HLT;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment