ITkPixelByteStreamCnv: Itk pixel bytestream encoding, working encoding algorithm + skeleton of decoding & BS output
In the current state, the package has fully working encoding (i. e. RDO pixel hits -> RD53C bit streams), using dummy online/offline IDs and RAW format. Previously, there was a bug with the compile-time generated QCore hitmap ecoding LUT (/ITkPixelByteStreamCnv/src/ITkPixQCoreEncodingLUT.h), which is fixed in this MR, and the encoded streams are validated to be correct now, and they are written to SG as std::vector<uint32_t> for now - this will be changed into a proper raw container once the functionality is migrated into a proper ByteStreamConverter class.
The decoding direction exists in a skeleton form with some preliminary functionality used mainly to test different approaches to writing RDOs into the respective collections.
The initial attempts at BS output are included, but lead (as expected) to no more than an empty file, since the current std::vector<uint32_t> output in SG is not recognized by Athena. Once again, this is expected to be solved by migrating the functionality into a proper ByteStreamConverter, which will take care of the output.
This is an intermediate MR for work in progress, to expose the current state to new contributors.