Project

General

Profile

Feature #9100

Feature #7538: art service/module command-line helpers

Feature #8770: Implement parameter set validation - task 3a of issue #7538

Feature #9099: Implement FHiCL validation in art

Add FHiCL ParameterSet validation support for modules and services

Added by Kyle Knoepfel over 5 years ago. Updated almost 5 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
Start date:
06/10/2015
Due date:
08/01/2015
% Done:

100%

Estimated time:
24.00 h
Spent time:
Scope:
Internal
Experiment:
-
SSI Package:
art
Duration: 53

Description

In order for users to implement ParameterSet validation for their own modules, the following steps must be taken:

  1. New tables must be developed that inherit from fhicl::Table<>
    • EDProducer::Table<>
    • EDFilter::Table<>
    • EDAnalyzer::Table<>
    • ServiceTable
       
      These are constructed with the facility that special keys are injected into the ParameterSet reference. For example, the user should not have to specify Atom<std::string> tmp { Key("module_type") }; in his module. This must be done automatically.
  2. Adjust DEFINE_ART_MODULE and corresponding service macro to search for presence of a Parameters typedef, which the system uses to provide a description.
  3. Develop way to aggregate configuration errors.

History

#1 Updated by Kyle Knoepfel over 5 years ago

  • Status changed from New to Assigned
  • Assignee set to Kyle Knoepfel

#2 Updated by Kyle Knoepfel over 5 years ago

  • % Done changed from 0 to 80

Steps 1 and 2 are complete. I am trying to figure out a way to aggregate the exceptions for services (module-configuration errors are now aggregated).

#3 Updated by Kyle Knoepfel about 5 years ago

  • % Done changed from 80 to 100

The aggregation of errors for modules is straightforward, yet it is difficult for services. For that reason, service-configuration errors will appear one at a time.

#4 Updated by Kyle Knoepfel about 5 years ago

Pushed to repository with commit art:4a5b669a118552218f853cde0aab38398cf726a3.

#5 Updated by Kyle Knoepfel about 5 years ago

  • Status changed from Assigned to Resolved

#6 Updated by Kyle Knoepfel almost 5 years ago

  • Target version changed from 1.18.00 to 1.16.00

#7 Updated by Christopher Green almost 5 years ago

  • Status changed from Resolved to Closed


Also available in: Atom PDF