# Interface methods for submodule: ImageToImageMetric
from typing import Union, Any
# additional imports
from .support.template_class import itkTemplate as _itkTemplate
from ._proxies import SingleValuedCostFunctionProxy as _SingleValuedCostFunctionProxy


# Interface methods for class: ImageToImageMetric
class ImageToImageMetricProxy(_SingleValuedCostFunctionProxy):
	def GetNameOfClass(self):
		""""""
		...

	def SetFixedImage(self, _arg) -> None:
		""""""
		...

	def GetFixedImage(self):
		""""""
		...

	def SetMovingImage(self, _arg) -> None:
		""""""
		...

	def GetMovingImage(self):
		""""""
		...

	def SetTransform(self, _arg) -> None:
		""""""
		...

	def GetModifiableTransform(self):
		""""""
		...

	def GetTransform(self):
		""""""
		...

	def SetInterpolator(self, _arg) -> None:
		""""""
		...

	def GetModifiableInterpolator(self):
		""""""
		...

	def GetInterpolator(self):
		""""""
		...

	def GetNumberOfMovingImageSamples(self) -> int:
		""""""
		...

	def GetNumberOfPixelsCounted(self) -> int:
		""""""
		...

	def SetFixedImageRegion(self, reg: ImageRegion) -> None:
		""""""
		...

	def GetFixedImageRegion(self) -> ImageRegion:
		""""""
		...

	@overload
	def SetMovingImageMask(self, arg) -> None:
		""""""
		...

	@overload
	def SetMovingImageMask(self, _arg) -> None:
		""""""
		...

	def GetMovingImageMask(self):
		""""""
		...

	@overload
	def SetFixedImageMask(self, arg) -> None:
		""""""
		...

	@overload
	def SetFixedImageMask(self, _arg) -> None:
		""""""
		...

	def GetFixedImageMask(self):
		""""""
		...

	def SetFixedImageIndexes(self, indexes) -> None:
		""""""
		...

	def SetUseFixedImageIndexes(self, useIndexes: bool) -> None:
		""""""
		...

	def GetUseFixedImageIndexes(self) -> bool:
		""""""
		...

	def SetNumberOfWorkUnits(self, numberOfThreads: int) -> None:
		""""""
		...

	def GetNumberOfWorkUnits(self) -> int:
		""""""
		...

	def SetComputeGradient(self, _arg: bool) -> None:
		""""""
		...

	def GetComputeGradient(self) -> bool:
		""""""
		...

	def ComputeGradientOn(self) -> None:
		""""""
		...

	def ComputeGradientOff(self) -> None:
		""""""
		...

	def ComputeGradient(self) -> None:
		""""""
		...

	def GetModifiableGradientImage(self):
		""""""
		...

	def GetGradientImage(self):
		""""""
		...

	def SetTransformParameters(self, parameters) -> None:
		""""""
		...

	def GetNumberOfParameters(self) -> int:
		""""""
		...

	def Initialize(self) -> None:
		""""""
		...

	def MultiThreadingInitialize(self) -> None:
		""""""
		...

	def SetNumberOfFixedImageSamples(self, numSamples: int) -> None:
		""""""
		...

	def GetNumberOfFixedImageSamples(self) -> int:
		""""""
		...

	def SetNumberOfSpatialSamples(self, num: int) -> None:
		""""""
		...

	def GetNumberOfSpatialSamples(self) -> int:
		""""""
		...

	@overload
	def SetFixedImageSamplesIntensityThreshold(self, thresh: float) -> None:
		""""""
		...

	@overload
	def SetFixedImageSamplesIntensityThreshold(self, thresh: int) -> None:
		""""""
		...

	@overload
	def GetFixedImageSamplesIntensityThreshold(self) -> float:
		""""""
		...

	@overload
	def GetFixedImageSamplesIntensityThreshold(self) -> int:
		""""""
		...

	def SetUseFixedImageSamplesIntensityThreshold(self, useThresh: bool) -> None:
		""""""
		...

	def GetUseFixedImageSamplesIntensityThreshold(self) -> bool:
		""""""
		...

	def SetUseAllPixels(self, useAllPixels: bool) -> None:
		""""""
		...

	def UseAllPixelsOn(self) -> None:
		""""""
		...

	def UseAllPixelsOff(self) -> None:
		""""""
		...

	def GetUseAllPixels(self) -> bool:
		""""""
		...

	def SetUseSequentialSampling(self, useSequential: bool) -> None:
		""""""
		...

	def GetUseSequentialSampling(self) -> bool:
		""""""
		...

	@overload
	def ReinitializeSeed(self) -> None:
		""""""
		...

	@overload
	def ReinitializeSeed(self, seed: int) -> None:
		""""""
		...

	def SetUseCachingOfBSplineWeights(self, _arg: bool) -> None:
		""""""
		...

	def GetUseCachingOfBSplineWeights(self) -> bool:
		""""""
		...

	def UseCachingOfBSplineWeightsOn(self) -> None:
		""""""
		...

	def UseCachingOfBSplineWeightsOff(self) -> None:
		""""""
		...

	def GetModifiableThreader(self):
		""""""
		...

	def GetThreader(self):
		""""""
		...

	def GetThreaderTransform(self):
		""""""
		...

