44 #include <pcl/point_cloud.h>
45 #include <pcl/io/file_io.h>
113 Eigen::Vector4f &origin, Eigen::Quaternionf &orientation,
int &pcd_version,
114 int &data_type,
unsigned int &data_idx);
147 Eigen::Vector4f &origin, Eigen::Quaternionf &orientation,
int &pcd_version,
148 int &data_type,
unsigned int &data_idx,
const int offset = 0)
override;
176 readHeader (
const std::string &file_name,
pcl::PCLPointCloud2 &cloud,
const int offset = 0);
215 int pcd_version,
bool compressed,
unsigned int data_idx);
236 Eigen::Vector4f &origin, Eigen::Quaternionf &orientation,
int &pcd_version,
const int offset = 0)
override;
275 template<
typename Po
intT>
int
281 pcd_version, offset);
313 map_synchronization_ = sync;
323 const Eigen::Vector4f &origin,
324 const Eigen::Quaternionf &orientation);
337 generateHeaderBinaryCompressed (std::ostream &os,
339 const Eigen::Vector4f &origin,
340 const Eigen::Quaternionf &orientation);
349 const Eigen::Vector4f &origin,
350 const Eigen::Quaternionf &orientation);
359 const Eigen::Vector4f &origin,
360 const Eigen::Quaternionf &orientation);
367 template <
typename Po
intT>
static std::string
369 const int nr_points = std::numeric_limits<int>::max ());
389 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
390 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity (),
391 const int precision = 8);
401 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
402 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity ());
416 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
417 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity ());
431 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
432 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity ());
453 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
454 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity (),
455 const bool binary =
false)
override
458 return (writeBinary (file_name, cloud, origin, orientation));
459 return (writeASCII (file_name, cloud, origin, orientation, 8));
479 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
480 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity (),
481 const bool binary =
false)
483 return (
write (file_name, *cloud, origin, orientation, binary));
490 template <
typename Po
intT>
int
491 writeBinary (
const std::string &file_name,
502 template <
typename Po
intT>
int
503 writeBinaryCompressed (
const std::string &file_name,
511 template <
typename Po
intT>
int
512 writeBinary (
const std::string &file_name,
514 const std::vector<int> &indices);
521 template <
typename Po
intT>
int
522 writeASCII (
const std::string &file_name,
524 const int precision = 8);
532 template <
typename Po
intT>
int
533 writeASCII (
const std::string &file_name,
535 const std::vector<int> &indices,
536 const int precision = 8);
551 template<
typename Po
intT>
inline int
552 write (
const std::string &file_name,
554 const bool binary =
false)
557 return (writeBinary<PointT> (file_name, cloud));
558 return (writeASCII<PointT> (file_name, cloud));
575 template<
typename Po
intT>
inline int
576 write (
const std::string &file_name,
578 const std::vector<int> &indices,
582 return (writeBinary<PointT> (file_name, cloud, indices));
583 return (writeASCII<PointT> (file_name, cloud, indices));
592 setLockingPermissions (
const std::string &file_name,
593 boost::interprocess::file_lock &lock);
600 resetLockingPermissions (
const std::string &file_name,
601 boost::interprocess::file_lock &lock);
605 bool map_synchronization_;
623 return (p.
read (file_name, cloud));
636 Eigen::Vector4f &origin, Eigen::Quaternionf &orientation)
640 return (p.
read (file_name, cloud, origin, orientation, pcd_version));
648 template<
typename Po
intT>
inline int
652 return (p.
read (file_name, cloud));
672 const Eigen::Vector4f &origin = Eigen::Vector4f::Zero (),
673 const Eigen::Quaternionf &orientation = Eigen::Quaternionf::Identity (),
674 const bool binary_mode =
false)
677 return (w.
write (file_name, cloud, origin, orientation, binary_mode));
694 template<
typename Po
intT>
inline int
698 return (w.
write<
PointT> (file_name, cloud, binary_mode));
717 template<
typename Po
intT>
inline int
721 return (w.
write<
PointT> (file_name, cloud,
false));
733 template<
typename Po
intT>
inline int
757 template<
typename Po
intT>
int
760 const std::vector<int> &indices,
761 const bool binary_mode =
false)
765 return (w.
write<
PointT> (file_name, cloud, indices, binary_mode));
778 template<
typename Po
intT>
inline int
788 #include <pcl/io/impl/pcd_io.hpp>