Skip to content

Commit

Permalink
Fix hard coded struct size
Browse files Browse the repository at this point in the history
  • Loading branch information
Ryan Pals committed Jan 30, 2020
1 parent 7cd36a6 commit 946fb64
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 4 deletions.
3 changes: 3 additions & 0 deletions plugins/hdf/io/Hdf5Handler.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ void Hdf5Handler::initialize(
int_type.getOrder(),
int_type.getSign(),
int_type.getSize(),
ctype.getSize(),
ctype.getMemberOffset(j),
Dimension::Type(unsigned(Dimension::BaseType::Unsigned) | int_type.getSize()))
);
Expand All @@ -116,6 +117,7 @@ void Hdf5Handler::initialize(
int_type.getOrder(),
int_type.getSign(),
int_type.getSize(),
ctype.getSize(),
ctype.getMemberOffset(j),
Dimension::Type(unsigned(Dimension::BaseType::Signed) | int_type.getSize()))
);
Expand All @@ -130,6 +132,7 @@ void Hdf5Handler::initialize(
vauge_type,
float_type.getOrder(),
H5T_SGN_ERROR,
ctype.getSize(),
float_type.getSize(),
ctype.getMemberOffset(j),
Dimension::Type(unsigned(Dimension::BaseType::Floating) | float_type.getSize()))
Expand Down
8 changes: 5 additions & 3 deletions plugins/hdf/io/Hdf5Handler.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -66,14 +66,16 @@ namespace hdf5
const H5T_class_t hdf_type,
const H5T_order_t endianness,
const H5T_sign_t sign,
const size_t size,
const size_t compound_size,
const size_t member_size,
const int offset,
Dimension::Type pdal_type)
: name(name)
, hdf_type(hdf_type)
, endianness(endianness)
, sign(sign)
, size(size)
, compound_size(compound_size)
, member_size(member_size)
, offset(offset)
, pdal_type(pdal_type)
{ }
Expand All @@ -82,7 +84,7 @@ namespace hdf5
H5T_class_t hdf_type;
H5T_order_t endianness;
H5T_sign_t sign;
size_t size;
size_t member_size, compound_size;
int offset;
Dimension::Type pdal_type;
Dimension::Id id;
Expand Down
2 changes: 1 addition & 1 deletion plugins/hdf/io/HdfReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ point_count_t HdfReader::read(PointViewPtr view, point_count_t count)
//This could be a huge allocation. Perhaps we should do something
// in the icebridge handler?
std::cout << "HdfReader::read" << std::endl;
size_t point_size = 52; //TODO Fix
size_t point_size = m_infos.at(0).compound_size;
PointId startId = view->size();
point_count_t remaining = m_hdf5Handler.getNumPoints() - m_index;
count = (std::min)(count, remaining);
Expand Down

0 comments on commit 946fb64

Please sign in to comment.