Skip to content
Open
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions icarusalg/gallery/helpers/python/ICARUSservices.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,20 @@ class ICARUSserviceManagerClass(LArSoftUtils.ServiceManagerInstance):
DefaultConfigPath = "services_basic_icarus.fcl"
DefaultServiceTable = "icarus_basic_services"

ICARUSextraServices = {

# NOTE: this requires LArSoft dependencies (`larevt`, `icaruscode`)
# and a more advanced configuration (e.g. `services_common_icarus.fcl`)
'ChannelStatusService': LArSoftUtils.SimpleServiceLoader(
"lariov::SIOVChannelStatusProvider",
configKey=".ChannelStatusProvider",
interfaceClass="lariov::ChannelStatusProvider",
headers = "larevt/CalibrationDBI/Providers/SIOVChannelStatusProvider.h",
libraries = "larevt_CalibrationDBI_Providers",
),

} # ICARUSextraServices

def defaultConfiguration(self):
"""

Expand Down Expand Up @@ -89,6 +103,16 @@ def __init__(self):
)
# __init__()

def serviceLoaderTable(self):
"""Returns the table with the services with known loaders.

This overrides the base class function (but it invokes it first anyway).
"""
serviceLoaderTable = super().serviceLoaderTable()
serviceLoaderTable.update(self.ICARUSextraServices)
return serviceLoaderTable
# serviceLoaderTable()

def setup(self):
"""Prepares for ICARUS service provider access in python/Gallery."""

Expand Down
Loading