pdsp_decoder.fcl
Go to the documentation of this file.
1 # pdsp_decoder.fcl
2 
3 # David Adams
4 # August 2019
5 #
6 # Default configuration for the protoDUNE TPC decoder tool.
7 #
8 # This is a duplicate of the prolog definition for pdsrd_tool in pdsprd.fcl.
9 
10 tools.pdsp_decoder: {
11  tool_type: "PDSPTPCDataInterface"
12 
13  APA1InputLabels: [ "daq:TPC001", "daq:ContainerTPC001", "daq:FELIX001", "daq:ContainerFELIX001", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
14  APA2InputLabels: [ "daq:TPC002", "daq:ContainerTPC002", "daq:FELIX002", "daq:ContainerFELIX002", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
15  APA3InputLabels: [ "daq:TPC003", "daq:ContainerTPC003", "daq:FELIX003", "daq:ContainerFELIX003", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
16  APA4InputLabels: [ "daq:TPC004", "daq:ContainerTPC004", "daq:FELIX004", "daq:ContainerFELIX004", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
17  APA5InputLabels: [ "daq:TPC005", "daq:ContainerTPC005", "daq:FELIX005", "daq:ContainerFELIX005", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
18  APA6InputLabels: [ "daq:TPC006", "daq:ContainerTPC006", "daq:FELIX006", "daq:ContainerFELIX006", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ]
19  APA7InputLabels: [ "daq:TPC007", "daq:ContainerTPC007", "daq:FELIX007", "daq:ContainerFELIX007", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX",
20  "daq:TPC000", "daq:ContainerTPC000", "daq:FELIX000", "daq:ContainerFELIX000" ]
21  APA8InputLabels: [ "daq:TPC008", "daq:ContainerTPC008", "daq:FELIX008", "daq:ContainerFELIX008", "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX",
22  "daq:TPC000", "daq:ContainerTPC000", "daq:FELIX000", "daq:ContainerFELIX000" ]
23  MISCAPAInputLabels: [ "daq:TPC", "daq:ContainerTPC", "daq:FELIX", "daq:ContainerFELIX" ] # use for example for coldbox-test data
24  DefaultCrateIfUnexpected: 3 # Use for coldbox data -- unexpected means not in the range 1-6.
25 
26  RCEDropSmallFrags: true
27  RCESmallFragSize: 500000
28  RCEDropFragsWithBadSF: true # skip fragments with invalid slot and fiber numbers
29  RCEDropFragsWithBadC: true # skip fragments with invalid crate numbers
30  RCEHexDump: false
31  RCESaveFragsToFiles: false
32  RCECheckBufferSize: true
33  RCEBufferSizeCheckLimit: 10000000
34  RCEFIX110: true # shift waveforms for ASIC 3 on FEMB 110
35  RCEFIX110NTICKS: 18 # number of ticks to shift waveforms on FEMB 110 ASIC 3
36 
37  FELIXDropFragsWithBadSF: true
38  FELIXDropFragsWithBadC: true
39  FELIXHexDump: false
40  FELIXDropSmallFrags: true
41  FELIXSmallFragSize: 10000
42  FELIXCheckBufferSize: true
43  FELIXBufferSizeCheckLimit: 10000000
44 
45 # enforcement flags. If these are set to true and the data completeness
46 # conditions are not met, then an emtpy collection of raw::RawDigits is
47 # put in the event
48 
49 # requires that we don't see the same channel twice in in an event
50 
51  EnforceNoDuplicateChannels: true
52 
53 # requires that all channels have the same number of ticks (on each event separately)
54 
55  EnforceSameTickCount: false
56 
57 # requires that all channels have the specified number of ticks
58 
59  EnforceFullTickCount: false
60  FullTickCount: 6000
61 
62 # requires that no errors are reported by the unpacker (checksum or capture errors)
63 
64  EnforceErrorFree: false
65 }
66 
67 tools.iceberg_decoder: @local::tools.pdsp_decoder
68 tools.iceberg_decoder.RCEFIX110: false
69