ShadowFinder has run by default in rugnux for a release and has never had a test. The scene is a beam stop - an opaque disk on the beam with an arm running off it to the edge - and the mask has to be that and nothing else: not the corners, and not a reflection recorded through the penumbra, which has to be given back. The last assertion pins the number of masked pixels as the serial implementation produces it. The detection is several passes of dilation, hole filling and a per-ring median, and a rewrite that moves the answer by a pixel would otherwise surface as a merging statistic several stages downstream, if at all. The scene is integer and noise-free so every mean is exact, and 257 is odd, square and not a multiple of 64 - the beam lands on a pixel, a cross is exactly 4-fold symmetric, and the column-blocked passes meet a short final block. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01VfYvJT5Nb71suJCowRBn5z
115 lines
3.9 KiB
CMake
115 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
|
|
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) |