ZipPoint::ZipPoint(PointFormatName format) : m_num_items(0), m_items(NULL), m_lz_point(NULL), m_lz_point_data(NULL), m_lz_point_size(0) { ConstructItems(format); return; }
// Write-mode ctor. LasZipPoint::LasZipPoint(uint8_t format, uint16_t pointLen) : m_zip(new LASzip()), m_lz_point(NULL), m_lz_point_size(0) { if (!m_zip->setup(format, pointLen)) { std::ostringstream oss; const char* err = m_zip->get_error(); if (err == NULL) err = "(unknown error)"; oss << "Error setting up LASzip for format " << format << ": " << err; throw pdal_error(oss.str()); } ConstructItems(); }
// Read-mode ctor. LasZipPoint::LasZipPoint(LasVLR *vlr) : m_zip(new LASzip()), m_lz_point(NULL), m_lz_point_size(0) { if (!vlr || !m_zip->unpack((unsigned char *)vlr->data(), (int)vlr->dataLen())) { std::ostringstream oss; const char* err = m_zip->get_error(); if (err == NULL) err = "(unknown error)"; oss << "Error unpacking zip VLR data: " << std::string(err); throw pdal_error(oss.str()); } ConstructItems(); }