12 #ifndef __itkShortestPathCostFunction_h 13 #define __itkShortestPathCostFunction_h 15 #include "itkObject.h" 16 #include "itkObjectFactory.h" 17 #include "itkShapedNeighborhoodIterator.h" 22 template <
class TInputImageType>
42 typedef typename TInputImageType::PixelType
PixelType;
43 typedef typename TInputImageType::IndexType
IndexType;
46 itkSetConstObjectMacro(
Image, TInputImageType);
49 virtual double GetCost(IndexType p1, IndexType p2) = 0;
66 void PrintSelf(std::ostream &os, Indent indent)
const override;
72 void operator=(
const Self &);
77 #include "itkShortestPathCostFunction.txx" ~ShortestPathCostFunction() override
TInputImageType ImageType
TInputImageType::Pointer ImagePointer
ShortestPathCostFunction()
TInputImageType::IndexType IndexType
ShortestPathCostFunction Self
ImageConstPointer m_Image
SmartPointer< const Self > ConstPointer
void SetEndIndex(const IndexType &index)
virtual double GetMinCost()=0
TInputImageType::ConstPointer ImageConstPointer
virtual void Initialize()=0
ShapedNeighborhoodIterator< TInputImageType > ShapedNeighborhoodIteratorType
SmartPointer< Self > Pointer
void SetStartIndex(const IndexType &index)
TInputImageType::PixelType PixelType
void PrintSelf(std::ostream &os, Indent indent) const override
virtual double GetCost(IndexType p1, IndexType p2)=0