diff --git a/Modules/Core/Common/include/itkImageRandomNonRepeatingConstIteratorWithIndex.h b/Modules/Core/Common/include/itkImageRandomNonRepeatingConstIteratorWithIndex.h index 0c5c50be36e..41fc54cd18f 100644 --- a/Modules/Core/Common/include/itkImageRandomNonRepeatingConstIteratorWithIndex.h +++ b/Modules/Core/Common/include/itkImageRandomNonRepeatingConstIteratorWithIndex.h @@ -129,7 +129,7 @@ class RandomPermutation void ReinitializeSeed() const { - m_Generator->Initialize(); + m_Generator->SetSeed(); } void diff --git a/Modules/Core/Common/include/itkMersenneTwisterRandomVariateGenerator.h b/Modules/Core/Common/include/itkMersenneTwisterRandomVariateGenerator.h index 1438f045113..74ce9f84161 100644 --- a/Modules/Core/Common/include/itkMersenneTwisterRandomVariateGenerator.h +++ b/Modules/Core/Common/include/itkMersenneTwisterRandomVariateGenerator.h @@ -175,9 +175,17 @@ class ITKCommon_EXPORT MersenneTwisterRandomVariateGenerator : public RandomVari /** Length of state vector */ static constexpr IntegerType StateVectorLength = 624; - /** Sets the seed and initializes the internal state of this generator. */ +#ifndef ITK_FUTURE_LEGACY_REMOVE + /** Sets the seed and initializes the internal state of this generator. + * \deprecated ITK 6 discourages using this member function. Please use `SetSeed` instead! + */ + ITK_FUTURE_DEPRECATED("ITK 6 discourages using this member function. Please use `SetSeed` instead!") void - Initialize(const IntegerType seed = Self::CreateRandomSeed()); + Initialize(const IntegerType seed = Self::CreateRandomSeed()) + { + this->SetSeed(seed); + } +#endif /** Get a random variate in the range [0, 1] */ double @@ -267,11 +275,7 @@ class ITKCommon_EXPORT MersenneTwisterRandomVariateGenerator : public RandomVari * \note This method is thread-safe. */ void - SetSeed(const IntegerType seed = Self::CreateRandomSeed()) - { - // Seed the generator. - Initialize(seed); - } + SetSeed(const IntegerType seed = Self::CreateRandomSeed()); /** Return the current seed * diff --git a/Modules/Core/Common/src/itkMersenneTwisterRandomVariateGenerator.cxx b/Modules/Core/Common/src/itkMersenneTwisterRandomVariateGenerator.cxx index c7112401577..288a564e7cf 100644 --- a/Modules/Core/Common/src/itkMersenneTwisterRandomVariateGenerator.cxx +++ b/Modules/Core/Common/src/itkMersenneTwisterRandomVariateGenerator.cxx @@ -167,7 +167,7 @@ MersenneTwisterRandomVariateGenerator::GetNextSeed() void -MersenneTwisterRandomVariateGenerator::Initialize(const IntegerType seed) +MersenneTwisterRandomVariateGenerator::SetSeed(const IntegerType seed) { // This is a public member function, so it must lock the mutex of the instance. const std::lock_guard lockGuard(m_InstanceMutex); diff --git a/Modules/Core/Common/test/itkCompensatedSummationTest.cxx b/Modules/Core/Common/test/itkCompensatedSummationTest.cxx index 78ca051b311..9887a3e37db 100644 --- a/Modules/Core/Common/test/itkCompensatedSummationTest.cxx +++ b/Modules/Core/Common/test/itkCompensatedSummationTest.cxx @@ -38,7 +38,7 @@ itkCompensatedSummationTest(int, char *[]) using GeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; auto generator = GeneratorType::New(); - generator->Initialize(seedValue); + generator->SetSeed(seedValue); FloatType vanillaSum = 0.0; using CompensatedSummationType = itk::CompensatedSummation; diff --git a/Modules/Core/Common/test/itkMersenneTwisterRandomVariateGeneratorTest.cxx b/Modules/Core/Common/test/itkMersenneTwisterRandomVariateGeneratorTest.cxx index ac0dd772962..031ddb935de 100644 --- a/Modules/Core/Common/test/itkMersenneTwisterRandomVariateGeneratorTest.cxx +++ b/Modules/Core/Common/test/itkMersenneTwisterRandomVariateGeneratorTest.cxx @@ -17,6 +17,10 @@ *=========================================================================*/ +#ifndef ITK_FUTURE_LEGACY_REMOVE +# define ITK_LEGACY_SILENT +#endif + #include "itkMersenneTwisterRandomVariateGenerator.h" #include "itkTestingMacros.h" @@ -104,6 +108,7 @@ itkMersenneTwisterRandomVariateGeneratorTest(int, char *[]) return EXIT_FAILURE; } +#ifndef ITK_FUTURE_LEGACY_REMOVE twister->Initialize(); twister->SetSeed(1234); const Twister::IntegerType withSetSeed = twister->GetIntegerVariate(); @@ -114,6 +119,7 @@ itkMersenneTwisterRandomVariateGeneratorTest(int, char *[]) std::cerr << "Result initializing with SetSeed() did not equal result with Initialize()." << std::endl; return EXIT_FAILURE; } +#endif return EXIT_SUCCESS; } diff --git a/Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.hxx b/Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.hxx index 8c94041a723..7ec3530bc63 100644 --- a/Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.hxx +++ b/Modules/Filtering/ImageNoise/include/itkSaltAndPepperNoiseImageFilter.hxx @@ -51,7 +51,7 @@ SaltAndPepperNoiseImageFilter::ThreadedGenerateData( } auto rand = Statistics::MersenneTwisterRandomVariateGenerator::New(); const uint32_t seed = Self::Hash(this->GetSeed(), uint32_t(indSeed)); - rand->Initialize(seed); + rand->SetSeed(seed); // Define the portion of the input to walk for this thread, using // the CallCopyOutputRegionToInputRegion method allows for the input diff --git a/Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.hxx b/Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.hxx index 7ccf507fcac..d51209fc9b5 100644 --- a/Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.hxx +++ b/Modules/Filtering/ImageNoise/include/itkShotNoiseImageFilter.hxx @@ -52,7 +52,7 @@ ShotNoiseImageFilter::ThreadedGenerateData( } auto rand = Statistics::MersenneTwisterRandomVariateGenerator::New(); const uint32_t seed = Self::Hash(this->GetSeed(), uint32_t(indSeed)); - rand->Initialize(seed); + rand->SetSeed(seed); auto randn = Statistics::NormalVariateGenerator::New(); randn->Initialize(bit_cast(seed)); diff --git a/Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.hxx b/Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.hxx index 40d5c19ec9a..fd28a6270ec 100644 --- a/Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.hxx +++ b/Modules/Filtering/ImageNoise/include/itkSpeckleNoiseImageFilter.hxx @@ -51,7 +51,7 @@ SpeckleNoiseImageFilter::ThreadedGenerateData( } auto rand = Statistics::MersenneTwisterRandomVariateGenerator::New(); const uint32_t seed = Self::Hash(this->GetSeed(), uint32_t(indSeed)); - rand->Initialize(seed); + rand->SetSeed(seed); // Define the portion of the input to walk for this thread, using // the CallCopyOutputRegionToInputRegion method allows for the input diff --git a/Modules/Numerics/Statistics/test/itkKdTreeTest1.cxx b/Modules/Numerics/Statistics/test/itkKdTreeTest1.cxx index 49afdf364f5..5bc0d716baf 100644 --- a/Modules/Numerics/Statistics/test/itkKdTreeTest1.cxx +++ b/Modules/Numerics/Statistics/test/itkKdTreeTest1.cxx @@ -38,7 +38,7 @@ itkKdTreeTest1(int argc, char * argv[]) using NumberGeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; const NumberGeneratorType::Pointer randomNumberGenerator = NumberGeneratorType::GetInstance(); - randomNumberGenerator->Initialize(); + randomNumberGenerator->SetSeed(); using MeasurementVectorType = itk::Array; using SampleType = itk::Statistics::ListSample; diff --git a/Modules/Numerics/Statistics/test/itkKdTreeTest3.cxx b/Modules/Numerics/Statistics/test/itkKdTreeTest3.cxx index 8ed46c88365..b049675a561 100644 --- a/Modules/Numerics/Statistics/test/itkKdTreeTest3.cxx +++ b/Modules/Numerics/Statistics/test/itkKdTreeTest3.cxx @@ -39,7 +39,7 @@ itkKdTreeTest3(int argc, char * argv[]) using NumberGeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; const NumberGeneratorType::Pointer randomNumberGenerator = NumberGeneratorType::GetInstance(); - randomNumberGenerator->Initialize(); + randomNumberGenerator->SetSeed(); using MeasurementVectorType = itk::Array; using SampleType = itk::Statistics::ListSample; diff --git a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest1.cxx b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest1.cxx index 6d87e147228..759ca3be760 100644 --- a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest1.cxx +++ b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest1.cxx @@ -37,7 +37,7 @@ itkWeightedCentroidKdTreeGeneratorTest1(int argc, char * argv[]) using NumberGeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; const NumberGeneratorType::Pointer randomNumberGenerator = NumberGeneratorType::GetInstance(); - randomNumberGenerator->Initialize(); + randomNumberGenerator->SetSeed(); using MeasurementVectorType = itk::Array; using SampleType = itk::Statistics::ListSample; diff --git a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest8.cxx b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest8.cxx index 739b0e93af5..53f3013e466 100644 --- a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest8.cxx +++ b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest8.cxx @@ -38,7 +38,7 @@ itkWeightedCentroidKdTreeGeneratorTest8(int argc, char * argv[]) using NumberGeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; const NumberGeneratorType::Pointer randomNumberGenerator = NumberGeneratorType::GetInstance(); - randomNumberGenerator->Initialize(); + randomNumberGenerator->SetSeed(); constexpr unsigned int measurementVectorSize = 2; diff --git a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest9.cxx b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest9.cxx index 5da687fe64f..22c47564b0c 100644 --- a/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest9.cxx +++ b/Modules/Numerics/Statistics/test/itkWeightedCentroidKdTreeGeneratorTest9.cxx @@ -39,7 +39,7 @@ itkWeightedCentroidKdTreeGeneratorTest9(int argc, char * argv[]) using NumberGeneratorType = itk::Statistics::MersenneTwisterRandomVariateGenerator; auto randomNumberGenerator = NumberGeneratorType::New(); - randomNumberGenerator->Initialize(); + randomNumberGenerator->SetSeed(); using MeasurementVectorType = itk::VariableLengthVector; using SampleType = itk::Statistics::ListSample; diff --git a/Modules/Registration/Common/test/itkMeanSquaresImageMetricTest.cxx b/Modules/Registration/Common/test/itkMeanSquaresImageMetricTest.cxx index f8111fcd6b5..690dc820e90 100644 --- a/Modules/Registration/Common/test/itkMeanSquaresImageMetricTest.cxx +++ b/Modules/Registration/Common/test/itkMeanSquaresImageMetricTest.cxx @@ -323,7 +323,7 @@ itkMeanSquaresImageMetricTest(int, char *[]) // Set bSplineTransform parameters with MersenneTwister ParametersType bSplineParameters(bSplineTransform->GetNumberOfParameters()); auto generator = GeneratorType::New(); - generator->Initialize(); + generator->SetSeed(); for (unsigned int d = 0; d < bSplineParameters.Size(); ++d) { bSplineParameters[d] = generator->GetNormalVariate();