<?xml version='1.0' encoding='UTF-8' standalone='yes' ?>
<tagfile>
  <compound kind="file">
    <name>bounding_volume_calculator.cpp</name>
    <path>/tmp/ws/src/rail_segmentation/src/</path>
    <filename>bounding__volume__calculator_8cpp</filename>
    <includes id="bounding__volume__calculator_8h" name="bounding_volume_calculator.h" local="no" imported="no">rail_segmentation/bounding_volume_calculator.h</includes>
  </compound>
  <compound kind="file">
    <name>bounding_volume_calculator.h</name>
    <path>/tmp/ws/src/rail_segmentation/include/rail_segmentation/</path>
    <filename>bounding__volume__calculator_8h</filename>
    <class kind="class">BoundingVolumeCalculator</class>
  </compound>
  <compound kind="file">
    <name>continuous_segmenter.cpp</name>
    <path>/tmp/ws/src/rail_segmentation/nodes/</path>
    <filename>continuous__segmenter_8cpp</filename>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>continuous__segmenter_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>rail_segmentation.cpp</name>
    <path>/tmp/ws/src/rail_segmentation/nodes/</path>
    <filename>rail__segmentation_8cpp</filename>
    <includes id="Segmenter_8h" name="Segmenter.h" local="yes" imported="no">rail_segmentation/Segmenter.h</includes>
    <member kind="function">
      <type>int</type>
      <name>main</name>
      <anchorfile>rail__segmentation_8cpp.html</anchorfile>
      <anchor>a3c04138a5bfe5d72780bb7e82a18e627</anchor>
      <arglist>(int argc, char **argv)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>SegmentationZone.cpp</name>
    <path>/tmp/ws/src/rail_segmentation/src/</path>
    <filename>SegmentationZone_8cpp</filename>
    <includes id="SegmentationZone_8h" name="SegmentationZone.h" local="yes" imported="no">rail_segmentation/SegmentationZone.h</includes>
  </compound>
  <compound kind="file">
    <name>SegmentationZone.h</name>
    <path>/tmp/ws/src/rail_segmentation/include/rail_segmentation/</path>
    <filename>SegmentationZone_8h</filename>
    <class kind="class">rail::segmentation::SegmentationZone</class>
    <namespace>rail</namespace>
    <namespace>rail::segmentation</namespace>
  </compound>
  <compound kind="file">
    <name>Segmenter.cpp</name>
    <path>/tmp/ws/src/rail_segmentation/src/</path>
    <filename>Segmenter_8cpp</filename>
    <includes id="Segmenter_8h" name="Segmenter.h" local="yes" imported="no">rail_segmentation/Segmenter.h</includes>
    <member kind="function">
      <type>Eigen::Vector3f</type>
      <name>RGB2Lab</name>
      <anchorfile>Segmenter_8cpp.html</anchorfile>
      <anchor>a4e4b68ade1ed782202b4d9845aeaa2f3</anchor>
      <arglist>(const Eigen::Vector3f &amp;colorRGB)</arglist>
    </member>
  </compound>
  <compound kind="file">
    <name>Segmenter.h</name>
    <path>/tmp/ws/src/rail_segmentation/include/rail_segmentation/</path>
    <filename>Segmenter_8h</filename>
    <includes id="SegmentationZone_8h" name="SegmentationZone.h" local="yes" imported="no">SegmentationZone.h</includes>
    <includes id="bounding__volume__calculator_8h" name="bounding_volume_calculator.h" local="yes" imported="no">bounding_volume_calculator.h</includes>
    <class kind="class">rail::segmentation::Segmenter</class>
    <namespace>rail</namespace>
    <namespace>rail::segmentation</namespace>
    <member kind="function">
      <type>Eigen::Vector3f</type>
      <name>RGB2Lab</name>
      <anchorfile>Segmenter_8h.html</anchorfile>
      <anchor>a4e4b68ade1ed782202b4d9845aeaa2f3</anchor>
      <arglist>(const Eigen::Vector3f &amp;colorRGB)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>BoundingVolumeCalculator</name>
    <filename>classBoundingVolumeCalculator.html</filename>
    <member kind="function" static="yes">
      <type>static rail_manipulation_msgs::BoundingVolume</type>
      <name>computeBoundingVolume</name>
      <anchorfile>classBoundingVolumeCalculator.html</anchorfile>
      <anchor>a86d6a6868a9d88bee86470dc3bc987e5</anchor>
      <arglist>(sensor_msgs::PointCloud2 cloud)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static rail_manipulation_msgs::BoundingVolume</type>
      <name>computeBoundingVolume</name>
      <anchorfile>classBoundingVolumeCalculator.html</anchorfile>
      <anchor>a2737eac650cb8304f4acacbe8ec7bbcf</anchor>
      <arglist>(pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::Ptr cloud)</arglist>
    </member>
    <member kind="function" static="yes">
      <type>static rail_manipulation_msgs::BoundingVolume</type>
      <name>computeBoundingVolume</name>
      <anchorfile>classBoundingVolumeCalculator.html</anchorfile>
      <anchor>ae15f9613a47849df0381dced3049b1a9</anchor>
      <arglist>(pcl::PointCloud&lt; pcl::PointXYZ &gt;::Ptr cloud)</arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>rail::segmentation::SegmentationZone</name>
    <filename>classrail_1_1segmentation_1_1SegmentationZone.html</filename>
    <member kind="function">
      <type>const std::string &amp;</type>
      <name>getBoundingFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ade2004d39805455ca0a47c6d95deecfc</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>const std::string &amp;</type>
      <name>getChildFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a96a7307f2a4814f5265f8675e026dd8b</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>const std::string &amp;</type>
      <name>getName</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ae5745b40912b97cd326380799be1fa39</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>const std::string &amp;</type>
      <name>getParentFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a8024573716e68c282887611fdd294fcc</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getPitchMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a30f53b093a7ca2c30092697c394d246c</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getPitchMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a196b38a604d6b2b440afb86f10ba7f8c</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>getRemoveSurface</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>aec57ed22b767d27e9e1e29cb17da7055</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>bool</type>
      <name>getRequireSurface</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ae6f47ec402d39df30b7f4e1bfc95d392</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getRollMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a9940940b728b67440c8e56bad2890f78</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getRollMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a53af4d50c244f9d707568e42fbd615ac</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>const std::string &amp;</type>
      <name>getSegmentationFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ae638dc71b150ee5dbee406c730cecacf</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getXMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a1f3ea08527f6a1d680091401cb6e3114</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getXMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a90c8bb81aa5e54c94e293c158859dea9</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getYawMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ad2e66d6b091d8549f2882e74a81779ce</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getYawMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a84a088e30a64163e0ef6962cb1a93c58</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getYMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a2a580508fa71fc8e78387469a6c43147</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getYMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a94335b36a5973719c4584a29ff5db041</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getZMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>aa4841194b283b64a1c58151158c15e21</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type>double</type>
      <name>getZMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a46f74edc20363ad3e44b52ce86aa7463</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>SegmentationZone</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a30a9c3689a123c17b118512bf176837b</anchor>
      <arglist>(const std::string &amp;name=&quot;&quot;, const std::string &amp;parent_frame_id=&quot;&quot;, const std::string &amp;child_frame_id=&quot;&quot;, const std::string &amp;bounding_frame_id=&quot;&quot;, const std::string &amp;segmentation_frame_id=&quot;&quot;)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setBoundingFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a75dcf3cb926394abf15bc91df398ed0b</anchor>
      <arglist>(const std::string &amp;bounding_frame_id)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setChildFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a35e4fb31f2184f980ba5a27afc7c45a7</anchor>
      <arglist>(const std::string &amp;child_frame_id)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setName</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a8878a9f533a40c6007ac420b1ef12887</anchor>
      <arglist>(const std::string &amp;name)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setParentFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a3263ab245798050bbb07a4d2220b3d59</anchor>
      <arglist>(const std::string &amp;parent_frame_id)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setPitchMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a56e0f6d3c5249fc5c651c68b4c7dffc4</anchor>
      <arglist>(const double pitch_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setPitchMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a0f7dd64eea81a5a5c7dca202b39853ca</anchor>
      <arglist>(const double pitch_min)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setRemoveSurface</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a7c3a5b1c1fc906a195634b6c57cd308e</anchor>
      <arglist>(const bool remove_surface)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setRequireSurface</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a90a222453462587bbda1357892f0ed23</anchor>
      <arglist>(const bool require_surface)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setRollMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ad967cddf0beee0fe079402bdf172602a</anchor>
      <arglist>(const double roll_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setRollMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a952c249a4337ee0c78c3f8f60ca668b8</anchor>
      <arglist>(const double roll_min)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setSegmentationFrameID</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a28724f4ee2cb2d8a9b6ef652d2d9814a</anchor>
      <arglist>(const std::string &amp;segmentation_frame_id)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setXMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a6939a0891a4c1533db152472aef84a6c</anchor>
      <arglist>(const double x_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setXMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a1ac5deecd2807b8cebd5ea6d1c4e562f</anchor>
      <arglist>(const double x_min)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setYawMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>aeb2ca3978c7757facd769df1a96f041e</anchor>
      <arglist>(const double yaw_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setYawMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a1ee2fcdb9e148f574864bc301f94de00</anchor>
      <arglist>(const double yaw_min)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setYMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a4e05a8cb48096d19eb0bf6d4bf2017ce</anchor>
      <arglist>(const double y_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setYMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a0aa83efddec42d52e9cfb12773a13960</anchor>
      <arglist>(const double y_min)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setZMax</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>aa4182671e9643f330aa099639a59896e</anchor>
      <arglist>(const double z_max)</arglist>
    </member>
    <member kind="function">
      <type>void</type>
      <name>setZMin</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a83ea64215dd72a0ee43887986dab1b76</anchor>
      <arglist>(const double z_min)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>bounding_frame_id_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>addcf70e169e048e373a1a3cf27e7d6d2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>child_frame_id_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ad4dbacde1cae466495a678c0f6697865</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>name_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a41c0a87c06fdac75b53bcd3f0fb93ea9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>parent_frame_id_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>afd4ad8979d90c867732b22b6c258026b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>pitch_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a6ab5ed33af05e87abb79416709a742a4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>pitch_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a7eed6044aa5e18fa5013e7759cc6cab4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>remove_surface_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>aabedabd73e7d4ff67a14ae2776a082fc</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>require_surface_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a95ce93a74fc938bbce7108280aa324c4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>roll_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ab65d9f1004fafc93c40351219a70620b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>roll_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>afe1ab88e2cbfbd9a3112700e656143b6</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>segmentation_frame_id_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ab50a1a0f80f1953f812c3b588f70f080</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>x_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a6e72d21408def09a85f131ee527b89d4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>x_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a20be1c414277975a109c474ca3922eae</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>y_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a303027727419ff2d478fa182d9ed8d81</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>y_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>ad99a81b2e977cefbf749ffbe93a9d18f</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>yaw_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a900baecd7fce2b89d89fd7ad41460824</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>yaw_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a38f88a25d830df4c855d74de8024e626</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_max_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>a597aac6dc7b4fff4e0c0097d1bf78b61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>z_min_</name>
      <anchorfile>classrail_1_1segmentation_1_1SegmentationZone.html</anchorfile>
      <anchor>af318ecbac96d2db589793fb67538a128</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="class">
    <name>rail::segmentation::Segmenter</name>
    <filename>classrail_1_1segmentation_1_1Segmenter.html</filename>
    <member kind="function">
      <type>bool</type>
      <name>okay</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>acfff0a952d141d9729066f723ca4cfa6</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function">
      <type></type>
      <name>Segmenter</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ad39ec3bda31be180820aa0bdca7b125d</anchor>
      <arglist>()</arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>CLUSTER_TOLERANCE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>af29f7236bdb4389fcc3ebbfc6a6312a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const bool</type>
      <name>DEFAULT_DEBUG</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a6c90b8833cf58a71d7d65f8a4a9e4520</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const int</type>
      <name>DEFAULT_MAX_CLUSTER_SIZE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>af1e2f8e1a4c6e3db16545ecaddda1466</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const int</type>
      <name>DEFAULT_MIN_CLUSTER_SIZE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a9bd59053a29a1acaf48b0bbb38ed4030</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const float</type>
      <name>DOWNSAMPLE_LEAF_SIZE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ade83d05c19997f3b5d5f642817994f2a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>MARKER_SCALE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a939f1e60d9659d12e56ed4863e0b186c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>POINT_COLOR_THRESHOLD</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a993cbfe35f5530bd1137dfa70ecaee8a</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>REGION_COLOR_THRESHOLD</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aaae25e05c8442d18a978527a71a8066c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>SAC_DISTANCE_THRESHOLD</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a6dbb7e9bf464d4675a1147a54f2f72a5</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>SAC_EPS_ANGLE</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>af548d63728909521e07fa2862d485a78</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const int</type>
      <name>SAC_MAX_ITERATIONS</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a59f6620d22ea65a2538a1477eb6b5c17</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" static="yes">
      <type>static const double</type>
      <name>SURFACE_REMOVAL_PADDING</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ac2a297955c47740f21ce391e9189e79e</anchor>
      <arglist></arglist>
    </member>
    <member kind="function" protection="private">
      <type>double</type>
      <name>averageZ</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ad86d4c59e226ff8efeb4eb81e140a6cb</anchor>
      <arglist>(const std::vector&lt; pcl::PointXYZRGB, Eigen::aligned_allocator&lt; pcl::PointXYZRGB &gt; &gt; &amp;v) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>calculateFeaturesCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae6f6760491924a9af9ad9f7d4891ff3e</anchor>
      <arglist>(rail_manipulation_msgs::ProcessSegmentedObjects::Request &amp;req, rail_manipulation_msgs::ProcessSegmentedObjects::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>clearCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a6df1fd0e08d1ca691f4002dad85021c9</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>sensor_msgs::Image</type>
      <name>createImage</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a3b2479dce69bcfcff886cc0b8bc84f60</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::PointIndices &amp;cluster) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>visualization_msgs::Marker</type>
      <name>createMarker</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae9f5e247c78781c4a51b4fbd9de0aaac</anchor>
      <arglist>(const pcl::PCLPointCloud2::ConstPtr &amp;pc) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>executeSegmentation</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a8ff81db07ead632e653f388ebd0b03b9</anchor>
      <arglist>(pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::Ptr pc, rail_manipulation_msgs::SegmentedObjectList &amp;objects)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>extract</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a4b3b62f6ce25cda6add4c9c4c900ce46</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::IndicesConstPtr &amp;indices_in, const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::Ptr &amp;out) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>extractClustersEuclidean</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a2571c81453c33c3b25debfd35365afe7</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::IndicesConstPtr &amp;indices_in, std::vector&lt; pcl::PointIndices &gt; &amp;clusters) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>extractClustersRGB</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a3ca7190e32f5aebea544bf0c78da22bb</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::IndicesConstPtr &amp;indices_in, std::vector&lt; pcl::PointIndices &gt; &amp;clusters) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>findSurface</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae7b67815232ad3ac4bb911e48bdd0c2a</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::IndicesConstPtr &amp;indices_in, const SegmentationZone &amp;zone, const pcl::IndicesPtr &amp;indices_out, rail_manipulation_msgs::SegmentedObject &amp;table_out) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>const SegmentationZone &amp;</type>
      <name>getCurrentZone</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a1d67aea520d45f816c3a9445bb557c2f</anchor>
      <arglist>() const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>void</type>
      <name>inverseBound</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a03a2aced92d2a0a09b26fedd6cfcb6c2</anchor>
      <arglist>(const pcl::PointCloud&lt; pcl::PointXYZRGB &gt;::ConstPtr &amp;in, const pcl::IndicesConstPtr &amp;indices_in, const pcl::ConditionBase&lt; pcl::PointXYZRGB &gt;::Ptr &amp;conditions, const pcl::IndicesPtr &amp;indices_out) const</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>removeObjectCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aca4b7ba5eba5787dac24d829189c44c3</anchor>
      <arglist>(rail_segmentation::RemoveObject::Request &amp;req, rail_segmentation::RemoveObject::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>segmentCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae3d41f786413c3d6f518b7f8ee31314e</anchor>
      <arglist>(std_srvs::Empty::Request &amp;req, std_srvs::Empty::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>segmentObjects</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a9b54f8450fb5f4b2264d6009fcae45eb</anchor>
      <arglist>(rail_manipulation_msgs::SegmentedObjectList &amp;objects)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>segmentObjectsCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a0ee68286524512c33f276b28b5c16c6e</anchor>
      <arglist>(rail_manipulation_msgs::SegmentObjects::Request &amp;req, rail_manipulation_msgs::SegmentObjects::Response &amp;res)</arglist>
    </member>
    <member kind="function" protection="private">
      <type>bool</type>
      <name>segmentObjectsFromPointCloudCallback</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a9d13683006df6fe45372cbf2aaa64f1b</anchor>
      <arglist>(rail_manipulation_msgs::SegmentObjectsFromPointCloud::Request &amp;req, rail_manipulation_msgs::SegmentObjectsFromPointCloud::Response &amp;res)</arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>calculate_features_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a83369df8819b1bf5ea16413875320955</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>clear_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>af0ab592e563b9c6f235faeb395af9344</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>double</type>
      <name>cluster_tolerance_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a89397203ec6f1fe636efca5d31947d49</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>crop_first_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a1c0a71a00b07a0347c98aa67d1700a1c</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>debug_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a6a1a2247dffc8799cfabeee7028892ab</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>debug_img_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a3ee71d122408e6a4e8b7978667de3adf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>debug_pc_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a3fc7db695eff960938a4feb80fdd646b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>label_markers_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae4028ab8cc420a2dcd69899f26edee2e</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>visualization_msgs::MarkerArray</type>
      <name>markers_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a5a3f557a2dbff892f70c796435e2beb0</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>markers_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae97eedf3c67324019f98225979f29035</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>max_cluster_size_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a81928b4f23c51452011b2845a4b73899</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>int</type>
      <name>min_cluster_size_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aba7a58a0e98310e779738cc6fa232372</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>boost::mutex</type>
      <name>msg_mutex_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>abb3f2211c29dde358f7c459d8eacac10</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>node_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ab5c9a1b871ccf85d4f6b6d0ecc6eccdd</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>rail_manipulation_msgs::SegmentedObjectList</type>
      <name>object_list_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a4342068dbc68fac0633a45aa9d29cae4</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>okay_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aa3122301e74ef5bf0aae0e29241383ce</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::string</type>
      <name>point_cloud_topic_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a6297ca20cd9521ec2d75b8cb98f4d841</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::NodeHandle</type>
      <name>private_node_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aa4af6892c2f5ee1a498e3a97b3c60645</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>remove_object_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aae50cc82b3430de84a2cf9a28df17583</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>segment_objects_from_point_cloud_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a4b178309e096b38a53285f0d72eee831</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>segment_objects_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aad86acfb81c74c4401abb083e19dbdc2</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::ServiceServer</type>
      <name>segment_srv_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a0534b17bbc57fc742306c2b14ad2787b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>segmented_objects_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a3547259e9a84c0804bc9dbcd0855d8d8</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>rail_manipulation_msgs::SegmentedObject</type>
      <name>table_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ae12bac7d78de839050bde97f271f6d0b</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>visualization_msgs::Marker</type>
      <name>table_marker_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a82043e679bcc97214d92234b060486a9</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>table_marker_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ab921450b00d1681da807090513802d77</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>ros::Publisher</type>
      <name>table_pub_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a1be9f52ec4d13b0765356eb5c1ee4679</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>visualization_msgs::MarkerArray</type>
      <name>text_markers_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ac82640ce9fcdce958f92267cb5641c56</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf2_ros::TransformListener</type>
      <name>tf2_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>acbfc9b87a3a0e25bb87b64264bedeee3</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf::TransformListener</type>
      <name>tf_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a56393e07e8f7f7311e14ba205f265f61</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>tf2_ros::Buffer</type>
      <name>tf_buffer_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>ad0c328433553f2919eed19709f010510</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>bool</type>
      <name>use_color_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>aa57c6825a6e38b6a162a12ac57cbc5bf</anchor>
      <arglist></arglist>
    </member>
    <member kind="variable" protection="private">
      <type>std::vector&lt; SegmentationZone &gt;</type>
      <name>zones_</name>
      <anchorfile>classrail_1_1segmentation_1_1Segmenter.html</anchorfile>
      <anchor>a10fab9a68f87f19f7915fa3a79822c91</anchor>
      <arglist></arglist>
    </member>
  </compound>
  <compound kind="namespace">
    <name>rail</name>
    <filename>namespacerail.html</filename>
    <namespace>rail::segmentation</namespace>
  </compound>
  <compound kind="namespace">
    <name>rail::segmentation</name>
    <filename>namespacerail_1_1segmentation.html</filename>
    <class kind="class">rail::segmentation::SegmentationZone</class>
    <class kind="class">rail::segmentation::Segmenter</class>
  </compound>
</tagfile>
