core/output.{h,cpp}: extract SampleOutputCSV from SampleOutputAIRR

See #3358.
Draft, there are segfaults now.
9 jobs for feature-a/3570-subclassing-csv in 11 minutes and 5 seconds (queued for 2 minutes and 51 seconds)
latest
Status Job ID Name Coverage
  Test Tools
passed #206424
test_tools

00:00:06

 
  Test Unit
passed #206425
test_algo_unit

00:03:21

 
  Test Functional
failed #206426
test_algo_should

00:07:36

 
  Test Shouldvdj
skipped #206427
test_algo_shouldvdj
 
  Coverage
skipped #206428
algo_coverage
 
  Prepare Release
skipped #206429
allowed to fail manual
prepare_release
 
  Valgrind Unit
skipped #206430
valgrind
algo_valgrind_unit
 
  Valgrind Functional
skipped #206431
valgrind allowed to fail manual
algo_valgrind_functional
 
  Multiple Tests
skipped #206432
several-compilers allowed to fail manual
test_various_compilers_manual
 
Name Stage Failure
failed
test_algo_should Test Functional
make[1]: *** [should] Error 2
make[1]: Leaving directory '/home/gitlab-runner/builds/b8d876c1/0/vidjil/vidjil/algo'
Makefile:212: recipe for target 'should_coverage' failed
make: *** [should_coverage] Error 2
make: Leaving directory '/home/gitlab-runner/builds/b8d876c1/0/vidjil/vidjil/algo'
Uploading artifacts...
WARNING: algo/tests/should.xml: no matching files
ERROR: No files to upload
ERROR: Job failed: exit status 1