DPL option unsigned long

Ciao @eulisse

I am trying to change the option timestamp in AliceO2/TRDTrackletTransformerWorkflow.cxx at ccf5495478d52f006a1e91925a4abc143e398f29 · AliceO2Group/AliceO2 · GitHub from VariantType::Int to VariantType::UInt64.
But when I try to run the workflow afterwards I get (even if just trying to print the help message)

oschmidt@lenovo:~/o2-dev/10pp$ o2-trd-tracklet-transformer -b --help
[ERROR] error while setting up workflow in o2-trd-tracklet-transformer: missing option: timestamp (boost::bad_any_cast: failed conversion using boost::any_cast)
terminate called after throwing an instance of 'std::invalid_argument'
  what():  missing option: timestamp (boost::bad_any_cast: failed conversion using boost::any_cast)
Aborted (core dumped)

I added a cast of the default option 555555 to uint64_t, but that did not help unfortunately. I see that CPV is using UInt64 as variant type in their Detectors/CPV/calib/testWorkflow/PedestalCalibratorSpec.h, so it should work I think.

Do you have an idea what I might be doing wrong?

Cheers,
Ole

Hi @oschmidt
I think you need to provide a default with UL qualifier

Cheers
Rubeb

Hi Ruben,
thanks I tried that already but it didn’t work. The error message is different if I don’t provide a default with a UL qualifier. It doesn’t even recognize the option then:

oschmidt@lenovo:~/o2-dev/10pp$ o2-trd-tracklet-transformer -b --help
[ERROR] error while setting up workflow in o2-trd-tracklet-transformer: missing option: timestamp
terminate called after throwing an instance of 'std::invalid_argument'
  what():  missing option: timestamp
Aborted (core dumped)

I tried

555555UL
static_cast<uint64_t>(555555)
(uint64_t) 555555

all without success. I always got the error message from my first post.

Cheers,
Ole