The two shapes - a fixed contiguous split, and work stealing off an atomic - had been copied into whichever file wanted them: an anonymous namespace in RotationScaleMerge.cpp, and another, byte for byte the same, in ShadowFinder.cpp, whose comment claimed it was "the only other file that wants it". The header is taken from the beam-stop GPU commit on the performance branch, which is not otherwise being picked. ShadowFinder now uses it, so the construct is exercised rather than shipped unused, and its own copy is gone. The beam-stop mask is unchanged, which its reference count already pins. Tested for the properties the callers rely on and which are easy to lose in a rewrite: the chunked slices tile the range in order with no empty one, work stealing visits every item exactly once, one thread means the caller's loop in order, an empty or negative count does nothing, an exception in a worker reaches the caller, and - the point of the whole thing - the answer is the serial answer bit for bit at every thread count. RotationScaleMerge.cpp keeps its own copy for now; consolidating it belongs with the scaling work, which is not being touched here. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VfYvJT5Nb71suJCowRBn5z
116 lines
3.9 KiB
CMake
116 lines
3.9 KiB
CMake
ADD_EXECUTABLE(jfjoch_test
|
|
DiffractionExperimentTest.cpp
|
|
RawToConvertedGeometryTest.cpp
|
|
../common/RawToConvertedGeometry.h
|
|
../common/DiffractionExperiment.h
|
|
CheckImageOutput.h
|
|
FPGAIntegrationTest.cpp
|
|
StrongPixelSetTest.cpp
|
|
AdaptiveThresholdTest.cpp
|
|
AdaptiveSpotFinderCPUTest.cpp
|
|
ZSTDCompressorTest.cpp
|
|
FrameTransformationTest.cpp
|
|
HDF5WritingTest.cpp PedestalCalcTest.cpp
|
|
ZMQImagePusherTest.cpp StreamWriterTest.cpp
|
|
CoordTest.cpp JFJochStateMachineTest.cpp
|
|
JFJochReceiverIntegrationTest.cpp
|
|
AcquisitionCountersTest.cpp
|
|
IndexingUnitTest.cpp
|
|
ThreadSafeFIFOSetTest.cpp
|
|
FPGANetworkTest.cpp
|
|
JFPedestalTest.cpp
|
|
JFCalibrationTest.cpp
|
|
AzimuthalIntegrationTest.cpp
|
|
StatusVectorTest.cpp
|
|
CBORTest.cpp
|
|
DetectorGeometryTest.cpp DetectorSetupTest.cpp DiffractionGeometryTest.cpp
|
|
FPGASpotFindingUnitTest.cpp
|
|
PreviewCounterTest.cpp
|
|
FPGAFrameGeneratorTest.cpp
|
|
FPGAHostWriterTest.cpp
|
|
DiffractionSpotTest.cpp
|
|
TIFFTest.cpp
|
|
JFJochReceiverProcessingTest.cpp
|
|
JPEGTest.cpp
|
|
HistogramTest.cpp
|
|
ROIMapTest.cpp
|
|
ROIIntegrationCPUTest.cpp
|
|
ROIIntegrationGPUTest.cpp
|
|
BraggIntegrationEngineGPUTest.cpp
|
|
BraggIntegrationEngineCompressedImageTest.cpp
|
|
BraggStencilTest.cpp
|
|
LossyFilterTest.cpp
|
|
ImageBufferTest.cpp
|
|
PixelMaskTest.cpp
|
|
RegressionTest.cpp
|
|
FPGAHLSModulesTest.cpp
|
|
ZMQPreviewSocketTest.cpp
|
|
DetectorSettingsTest.cpp
|
|
AutoIncrVectorTest.cpp
|
|
ModuleSummationTest.cpp
|
|
ZMQMetadataSocketTest.cpp
|
|
JFJochReaderTest.cpp
|
|
ShadowFinderTest.cpp
|
|
ParallelForTest.cpp
|
|
RugnuxTest.cpp
|
|
ResultReportTest.cpp
|
|
RugnuxLargeTest.cpp
|
|
TestData.h
|
|
MovingAverageTest.cpp
|
|
ImageMetadataTest.cpp
|
|
JFJochReceiverLiteTest.cpp
|
|
GridScanSettingsTest.cpp
|
|
JFJochReceiverPlotsTest.cpp
|
|
GoniometerAxisTest.cpp
|
|
DetGeomCalibTest.cpp
|
|
RingsFromProfileTest.cpp
|
|
CalibrationTest.cpp
|
|
XtalOptimizerTest.cpp
|
|
CrystalLatticeTest.cpp
|
|
FPGAPTPTest.cpp
|
|
ResolutionShellsTest.cpp
|
|
ImageSpotFinderCPUTest.cpp
|
|
ImageSpotFinderGPUTest.cpp
|
|
BSLZ4DecoderGPUTest.cpp
|
|
BSLZ4DecoderGPUFuzzTest.cpp
|
|
ImagePreprocessorGPUFusedTest.cpp
|
|
AdaptiveSpotFinderGPUTest.cpp
|
|
SpotExtractorGPUParityTest.cpp
|
|
CalcBraggPredictionTest.cpp
|
|
SpotUtilsTest.cpp
|
|
LatticeSearchTest.cpp
|
|
TimeTest.cpp
|
|
RotationIndexerTest.cpp
|
|
TopPixelsTest.cpp
|
|
HKLKeyTest.cpp
|
|
TCPImagePusherTest.cpp
|
|
SearchSpaceGroupTest.cpp
|
|
SearchSpaceGroupTwinTest.cpp
|
|
SyntheticMergedReflections.h
|
|
XDSPluginTest.cpp
|
|
MergeScaleTest.cpp
|
|
RfreeFlagsTest.cpp
|
|
FrenchWilsonTest.cpp
|
|
ReindexAmbiguityTest.cpp
|
|
LoadReferenceMtzFreeFlagsTest.cpp
|
|
UnitCellTest.cpp
|
|
CCTest.cpp
|
|
MultiLatticeSearchTest.cpp
|
|
LatticeReductionTest.cpp
|
|
BeamCenterFromBackgroundTest.cpp
|
|
BeamCenterFromSpotsTest.cpp
|
|
)
|
|
|
|
target_link_libraries(jfjoch_test Catch2WithMain JFJochBroker JFJochReceiver JFJochReader JFJochStreamWriter
|
|
Rugnux JFJochImageAnalysis JFJochCommon JFJochHLSSimulation JFJochPreview
|
|
jfjoch_xds_plugin)
|
|
target_include_directories(jfjoch_test PRIVATE .)
|
|
|
|
find_package(Threads REQUIRED)
|
|
|
|
add_library(enospc_shim MODULE enospc_shim.c)
|
|
target_link_libraries(enospc_shim PRIVATE Threads::Threads dl)
|
|
set_target_properties(enospc_shim PROPERTIES PREFIX "" POSITION_INDEPENDENT_CODE ON) # remove "lib"
|
|
|
|
ADD_EXECUTABLE(jfjoch_hdf5_enospc_test jfjoch_hdf5_enospc_test.cpp)
|
|
target_link_libraries(jfjoch_hdf5_enospc_test Catch2WithMain JFJochWriter) |