SlicerRt / SlicerRT

Open-source toolkit for radiation therapy research, an extension of 3D Slicer. Features include DICOM-RT import/export, dose volume histogram, dose accumulation, external beam planning (TPS), structure comparison and morphology, isodose line/surface generation, etc.
https://slicerrt.org
127 stars 60 forks source link

Build error after integrating ion plan support #129

Closed cpinter closed 4 years ago

cpinter commented 4 years ago

After integrating the PR https://github.com/SlicerRt/SlicerRT/pull/124 I get the following error when building SlicerRT. I tried a clean build and got the same.

@MichaelColonel I cannot assign it to you but it would be great if you could fix this. Thank you!

  c:\d\_extensions\slicerrt\beams\mrml\vtkMRMLRTIonBeamNode.h(148): error C2079: 'vtkMRMLRTIonBeamNode::ScanningSpotSize' uses undefined class 'std::array<floa
t,2>' [C:\d\_Extensions\SlicerRT_R\inner-build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  c:\d\_extensions\slicerrt\beams\mrml\vtkMRMLRTIonBeamNode.h(84): error C2228: left of '.data' must have class/struct/union [C:\d\_Extensions\SlicerRT_R\inner
-build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(55): error C2131: expression did not evaluate to a constant [C:\d\_Extensions\SlicerRT_R\inner-
build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(72): error C2440: 'initializing': cannot convert from 'initializer list' to 'int' [C:\d\_Extens
ions\SlicerRT_R\inner-build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(72): error C2439: 'vtkMRMLRTIonBeamNode::ScanningSpotSize': member could not be initialized [C:
\d\_Extensions\SlicerRT_R\inner-build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(260): error C2109: subscript requires array or pointer type [C:\d\_Extensions\SlicerRT_R\inner-
build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(261): error C2109: subscript requires array or pointer type [C:\d\_Extensions\SlicerRT_R\inner-
build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(269): error C2440: '=': cannot convert from 'const std::array<float,2>' to 'int' [C:\d\_Extensi
ons\SlicerRT_R\inner-build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(358): error C2109: subscript requires array or pointer type [C:\d\_Extensions\SlicerRT_R\inner-
build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
  C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(359): error C2109: subscript requires array or pointer type [C:\d\_Extensions\SlicerRT_R\inner-
build\Beams\MRML\vtkSlicerBeamsModuleMRML.vcxproj] [C:\d\_Extensions\SlicerRT_R\inner.vcxproj]
MichaelColonel commented 4 years ago

I can't check windows version, but i have made some changes in PR #130.

cpinter commented 4 years ago

Thanks! There is an error still:

C:\d\_Extensions\SlicerRT\Beams\MRML\vtkMRMLRTIonBeamNode.cxx(328): error C2065: 'nofLeaves': undeclared identifier

MichaelColonel commented 4 years ago

I corrected that.

cpinter commented 4 years ago

Thanks! I committed your fix in a single commit with the proper prefix (COMP).