fw4spl
writer/tid/Fiducial.hpp
1 /* ***** BEGIN LICENSE BLOCK *****
2  * FW4SPL - Copyright (C) IRCAD, 2009-2018.
3  * Distributed under the terms of the GNU Lesser General Public License (LGPL) as
4  * published by the Free Software Foundation.
5  * ****** END LICENSE BLOCK ****** */
6 
7 #pragma once
8 
9 #include "fwGdcmIO/container/sr/DicomSRNode.hpp"
10 #include "fwGdcmIO/writer/tid/TemplateID.hpp"
11 
12 #include <fwData/Image.hpp>
13 
14 namespace fwData
15 {
16 class Point;
17 }
18 
19 namespace fwGdcmIO
20 {
21 namespace writer
22 {
23 namespace tid
24 {
25 
30 class FWGDCMIO_CLASS_API Fiducial : public ::fwGdcmIO::writer::tid::TemplateID< ::fwData::Image >
31 {
32 
33 public:
40  FWGDCMIO_API Fiducial(const SPTR(::gdcm::Writer)& writer,
41  const SPTR(::fwGdcmIO::container::DicomInstance)& instance,
42  const ::fwData::Image::csptr& image);
43 
45  FWGDCMIO_API virtual ~Fiducial();
46 
52  FWGDCMIO_API virtual void createNodes(const SPTR(::fwGdcmIO::container::sr::DicomSRNode)& parent,
53  bool useSCoord3D = true);
54 
55 protected:
56 
64  void createFiducial(const SPTR(::fwGdcmIO::container::sr::DicomSRNode)& parent,
65  const CSPTR(::fwData::Point)& point,
66  unsigned int id,
67  bool useSCoord3D);
68 
69 };
70 
71 } // namespace tid
72 } // namespace writer
73 } // namespace fwGdcmIO
#define SPTR(_cls_)
#define CSPTR(_cls_)
This class define a 3D point.
Definition: Point.hpp:22
This class defines a DICOM SOP instance. It is useful during the whole writing process. This class allows to share data between module writers.
TemplateID base class used to write templates.
The namespace fwGdcmIO contains reader, writer and helper for dicom data.
This class defines a node in a SR document.
Definition: DicomSRNode.hpp:27
Contains the representation of the data objects used in the framework.