#include "Acts/Utilities/Logger.hpp"
#include "GaudiKernel/MsgStream.h"
#include "GaudiKernel/CommonMessaging.h"
#include "GaudiKernel/INamedInterface.h"
#include "AthenaBaseComps/AthMessaging.h"
#include "AthenaKernel/getMessageSvc.h"
#include <memory>
#include <optional>
Go to the source code of this file.
|
| std::unique_ptr< const Acts::Logger > | makeActsAthenaLogger (IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name) |
| std::unique_ptr< const Acts::Logger > | makeActsAthenaLogger (const CommonMessagingBase *parent, const std::string &name) |
| std::unique_ptr< const Acts::Logger > | makeActsAthenaLogger (const AthMessaging *parent, const std::string &name) |
| std::unique_ptr< const Acts::Logger > | makeActsAthenaLogger (const CommonMessagingBase *parent, const std::string &name, std::optional< std::string > parent_name) |
| std::unique_ptr< const Acts::Logger > | makeActsAthenaLogger (const CommonMessagingBase *parent, const std::string &name, const std::string &parent_name) |
◆ makeActsAthenaLogger() [1/5]
| std::unique_ptr< const Acts::Logger > makeActsAthenaLogger |
( |
const AthMessaging * | parent, |
|
|
const std::string & | name ) |
Definition at line 81 of file Tracking/Acts/ActsInterop/src/Logger.cxx.
81 {
82 auto msg = std::make_shared<MsgStream>(
parent->msg());
83 auto filter = std::make_unique<ActsAthenaFilterPolicy>(
msg);
84 auto print = std::make_unique<ActsAthenaPrintPolicy>(
msg, name);
85 return std::make_unique<const Acts::Logger>(std::move(
print), std::move(filter));
86}
void print(char *figname, TCanvas *c1)
◆ makeActsAthenaLogger() [2/5]
| std::unique_ptr< const Acts::Logger > makeActsAthenaLogger |
( |
const CommonMessagingBase * | parent, |
|
|
const std::string & | name ) |
Definition at line 88 of file Tracking/Acts/ActsInterop/src/Logger.cxx.
89{
90
91 const INamedInterface *inamed =
dynamic_cast<const INamedInterface*
>(
parent);
92 std::optional<std::string> parent_name = std::nullopt;
93
94 if (inamed == nullptr) {
95 throw std::invalid_argument("parent needs to be INamedInterface");
96 }
97 parent_name = inamed->name();
99}
std::unique_ptr< const Acts::Logger > makeActsAthenaLogger(IMessageSvc *svc, const std::string &name, int level, std::optional< std::string > parent_name)
◆ makeActsAthenaLogger() [3/5]
| std::unique_ptr< const Acts::Logger > makeActsAthenaLogger |
( |
const CommonMessagingBase * | parent, |
|
|
const std::string & | name, |
|
|
const std::string & | parent_name ) |
◆ makeActsAthenaLogger() [4/5]
| std::unique_ptr< const Acts::Logger > makeActsAthenaLogger |
( |
const CommonMessagingBase * | parent, |
|
|
const std::string & | name, |
|
|
std::optional< std::string > | parent_name ) |
◆ makeActsAthenaLogger() [5/5]
| std::unique_ptr< const Acts::Logger > makeActsAthenaLogger |
( |
IMessageSvc * | svc, |
|
|
const std::string & | name, |
|
|
int | level, |
|
|
std::optional< std::string > | parent_name ) |
Definition at line 64 of file Tracking/Acts/ActsInterop/src/Logger.cxx.
65{
66 using namespace Acts::Logging;
67
68 std::string full_name =
name;
69 if (parent_name) {
70 full_name = *parent_name + "." + full_name;
71 }
72
73 auto msg = std::make_shared<MsgStream>(svc, full_name);
75 auto filter = std::make_unique<ActsAthenaFilterPolicy>(
msg);
76 auto print = std::make_unique<ActsAthenaPrintPolicy>(
msg, full_name);
77 return std::make_unique<const Acts::Logger>(std::move(
print), std::move(filter));
78}