Skip to content

Commit

Permalink
Change name of dimension ID variables to hopefully improve clarity.
Browse files Browse the repository at this point in the history
  • Loading branch information
abellgithub committed May 13, 2020
1 parent 8278cf5 commit a3614ea
Show file tree
Hide file tree
Showing 6 changed files with 19 additions and 18 deletions.
2 changes: 1 addition & 1 deletion io/EptAddonWriter.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ void EptAddonWriter::writeOne(const PointViewPtr view, const Addon& addon) const
auto& buffer(buffers.at(nodeId - 1));
assert(pointId * itemSize + itemSize <= buffer.size());
char* dst = buffer.data() + pointId * itemSize;
pr.getField(dst, addon.dstId(), addon.type());
pr.getField(dst, addon.externalId(), addon.type());
}

std::string dataDir = addon.dataDir();
Expand Down
7 changes: 4 additions & 3 deletions io/EptReader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -394,7 +394,8 @@ void EptReader::addDimensions(PointLayoutPtr layout)
}

for (Addon& addon : m_addons)
addon.setDstId(layout->registerOrAssignDim(addon.name(), addon.type()));
addon.setExternalId(
layout->registerOrAssignDim(addon.name(), addon.type()));
}


Expand Down Expand Up @@ -634,13 +635,13 @@ bool EptReader::processPoint(PointRef& dst, const TileContents& tile)
dst.setField(m_pointIdDim, pointId);
for (Addon& addon : m_addons)
{
Dimension::Id srcId = addon.srcId();
Dimension::Id srcId = addon.localId();
BasePointTable *t = tile.addonTable(srcId);
if (t)
{
PointRef addonPoint(*t, pointId);
double val = addonPoint.getFieldAs<double>(srcId);
dst.setField(addon.dstId(), val);
dst.setField(addon.externalId(), val);
}
}
return true;
Expand Down
2 changes: 1 addition & 1 deletion io/private/ept/Addon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,7 @@ AddonList Addon::store(const Connector& connector, const NL::json& spec,
connector.put(filename, meta.dump());

addons.emplace_back(dimName, filename, type);
addons.back().setDstId(id);
addons.back().setExternalId(id);
}
}
catch (NL::json::parse_error&)
Expand Down
20 changes: 11 additions & 9 deletions io/private/ept/Addon.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,20 +55,22 @@ class Addon
Addon(const std::string& dimName, const std::string& filename,
Dimension::Type type) :
m_name(dimName), m_filename(filename), m_type(type)
{ m_srcId = m_layout.registerOrAssignDim(dimName, type); }
{ m_localId = m_layout.registerOrAssignDim(dimName, type); }

std::string name() const
{ return m_name; }
std::string filename() const
{ return m_filename; }
Dimension::Type type() const
{ return m_type; }
Dimension::Id srcId() const
{ return m_srcId; }
Dimension::Id dstId() const
{ return m_dstId; }
void setDstId(Dimension::Id dstId)
{ m_dstId = dstId; }
// Id for the local (internal) layout
Dimension::Id localId() const
{ return m_localId; }
// Id for the layout to which we'll copy data (ultimate PDAL ID).
Dimension::Id externalId() const
{ return m_externalId; }
void setExternalId(Dimension::Id externalId)
{ m_externalId = externalId; }
Hierarchy& hierarchy()
{ return m_hierarchy; }
PointLayout& layout() const
Expand All @@ -84,8 +86,8 @@ class Addon
std::string m_name;
std::string m_filename;
Dimension::Type m_type;
Dimension::Id m_srcId;
Dimension::Id m_dstId;
Dimension::Id m_localId;
Dimension::Id m_externalId;

Hierarchy m_hierarchy;
PointLayout m_layout;
Expand Down
4 changes: 2 additions & 2 deletions io/private/ept/TileContents.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,7 @@ void TileContents::readZstandard() const

void TileContents::readAddon(const Addon& addon, size_t expectedPts)
{
m_addonTables[addon.srcId()] = nullptr;
m_addonTables[addon.localId()] = nullptr;

point_count_t addonPoints = addon.points(key());
if (addonPoints == 0)
Expand All @@ -158,7 +158,7 @@ void TileContents::readAddon(const Addon& addon, size_t expectedPts)

VectorPointTable *vpt = new VectorPointTable(addon.layout());
vpt->buffer() = std::move(data);
m_addonTables[addon.srcId()] = BasePointTablePtr(vpt);
m_addonTables[addon.localId()] = BasePointTablePtr(vpt);
}

void TileContents::transform()
Expand Down
2 changes: 0 additions & 2 deletions test/unit/io/EptAddonWriterTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -186,14 +186,12 @@ TEST(EptAddonWriterTest, boundedWrite)

PointTable table;
writer.prepare(table);
std::cerr << "Running addon writer!\n";
writer.execute(table);
}

// Now we'll query the whole dataset with this addon - points outside the
// bounds should have a Classification of zero.

std::cerr << "Re-reading!\n";
EptReader reader;
{
NL::json addons;
Expand Down

0 comments on commit a3614ea

Please sign in to comment.