Skip to content
  • Hans Johnson's avatar
    BUG: Common naming of \#define conflicts with ITK · 10873ecf
    Hans Johnson authored
    When VTK and ITK are used together, the
    \#define ThreadInfoStruct vtkMultiThreader::ThreadInfo
    from VTK/Common/Core/vtkMultiThreader.h
    
    would clobber the ThreadInfoStruct definition from
    ITK/Modules/Core/Common/include/itkMultiThreaderBase.h:
    104   struct ThreadInfoStruct
    105     {
    106     ThreadIdType ThreadID;
    107     ThreadIdType NumberOfThreads;
    108     void* UserData;
    109     ThreadFunctionType ThreadFunction;
    110     enum { SUCCESS, ITK_EXCEPTION, ITK_PROCESS_ABORTED_EXCEPTION, STD_EXCEPTION, UNKNOWN } ThreadExitCode;
    111     };
    
    =====
    using ThreadInfoStruct=vtkMultiThreader::ThreadInfo;
    
    avoids the pre-processor conflicts.
    
    =====
    
    See https://discourse.itk.org/t/vtk9-and-itk5-conflicts/802
    for discussion.
    10873ecf