Skip to content

Commit

Permalink
Fix declarations of aligned allocators.
Browse files Browse the repository at this point in the history
It seems like you might need a `const` for the first argument of
`std::pair` in `aligned_allocator`, see #111.

Added some `override` statements to Output3DWrapper's derived classes.
  • Loading branch information
NikolausDemmel committed Dec 1, 2017
1 parent f844561 commit fb5711b
Show file tree
Hide file tree
Showing 5 changed files with 18 additions and 18 deletions.
2 changes: 1 addition & 1 deletion src/IOWrapper/Output3DWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,7 @@ class Output3DWrapper
* Calling:
* Always called, no overhead if not used.
*/
virtual void publishGraph(const std::map<uint64_t,Eigen::Vector2i, std::less<uint64_t>, Eigen::aligned_allocator<std::pair<uint64_t, Eigen::Vector2i> > > &connectivity) {}
virtual void publishGraph(const std::map<uint64_t,Eigen::Vector2i, std::less<uint64_t>, Eigen::aligned_allocator<std::pair<const uint64_t, Eigen::Vector2i> > > &connectivity) {}



Expand Down
14 changes: 7 additions & 7 deletions src/IOWrapper/OutputWrapper/SampleOutputWrapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ class SampleOutputWrapper : public Output3DWrapper
printf("OUT: Destroyed SampleOutputWrapper\n");
}

virtual void publishGraph(const std::map<uint64_t,Eigen::Vector2i> &connectivity)
virtual void publishGraph(const std::map<uint64_t, Eigen::Vector2i, std::less<uint64_t>, Eigen::aligned_allocator<std::pair<const uint64_t, Eigen::Vector2i>>> &connectivity) override
{
printf("OUT: got graph with %d edges\n", (int)connectivity.size());

Expand All @@ -74,7 +74,7 @@ class SampleOutputWrapper : public Output3DWrapper



virtual void publishKeyframes( std::vector<FrameHessian*> &frames, bool final, CalibHessian* HCalib)
virtual void publishKeyframes( std::vector<FrameHessian*> &frames, bool final, CalibHessian* HCalib) override
{
for(FrameHessian* f : frames)
{
Expand All @@ -98,7 +98,7 @@ class SampleOutputWrapper : public Output3DWrapper
}
}

virtual void publishCamPose(FrameShell* frame, CalibHessian* HCalib)
virtual void publishCamPose(FrameShell* frame, CalibHessian* HCalib) override
{
printf("OUT: Current Frame %d (time %f, internal ID %d). CameraToWorld:\n",
frame->incoming_id,
Expand All @@ -108,21 +108,21 @@ class SampleOutputWrapper : public Output3DWrapper
}


virtual void pushLiveFrame(FrameHessian* image)
virtual void pushLiveFrame(FrameHessian* image) override
{
// can be used to get the raw image / intensity pyramid.
}

virtual void pushDepthImage(MinimalImageB3* image)
virtual void pushDepthImage(MinimalImageB3* image) override
{
// can be used to get the raw image with depth overlay.
}
virtual bool needPushDepthImage()
virtual bool needPushDepthImage() override
{
return false;
}

virtual void pushDepthImageFloat(MinimalImageF* image, FrameHessian* KF )
virtual void pushDepthImageFloat(MinimalImageF* image, FrameHessian* KF ) override
{
printf("OUT: Predicted depth for KF %d (id %d, time %f, internal frame-ID %d). CameraToWorld:\n",
KF->frameID,
Expand Down
2 changes: 1 addition & 1 deletion src/IOWrapper/Pangolin/PangolinDSOViewer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -419,7 +419,7 @@ void PangolinDSOViewer::drawConstraints()



void PangolinDSOViewer::publishGraph(const std::map<uint64_t,Eigen::Vector2i> &connectivity)
void PangolinDSOViewer::publishGraph(const std::map<uint64_t, Eigen::Vector2i, std::less<uint64_t>, Eigen::aligned_allocator<std::pair<const uint64_t, Eigen::Vector2i>>> &connectivity)
{
if(!setting_render_display3D) return;
if(disableAllDisplay) return;
Expand Down
16 changes: 8 additions & 8 deletions src/IOWrapper/Pangolin/PangolinDSOViewer.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,18 +67,18 @@ class PangolinDSOViewer : public Output3DWrapper


// ==================== Output3DWrapper Functionality ======================
virtual void publishGraph(const std::map<uint64_t,Eigen::Vector2i> &connectivity);
virtual void publishKeyframes( std::vector<FrameHessian*> &frames, bool final, CalibHessian* HCalib);
virtual void publishCamPose(FrameShell* frame, CalibHessian* HCalib);
virtual void publishGraph(const std::map<uint64_t, Eigen::Vector2i, std::less<uint64_t>, Eigen::aligned_allocator<std::pair<const uint64_t, Eigen::Vector2i>>> &connectivity) override;
virtual void publishKeyframes( std::vector<FrameHessian*> &frames, bool final, CalibHessian* HCalib) override;
virtual void publishCamPose(FrameShell* frame, CalibHessian* HCalib) override;


virtual void pushLiveFrame(FrameHessian* image);
virtual void pushDepthImage(MinimalImageB3* image);
virtual bool needPushDepthImage();
virtual void pushLiveFrame(FrameHessian* image) override;
virtual void pushDepthImage(MinimalImageB3* image) override;
virtual bool needPushDepthImage() override;

virtual void join();
virtual void join() override;

virtual void reset();
virtual void reset() override;
private:

bool needReset;
Expand Down
2 changes: 1 addition & 1 deletion src/OptimizationBackend/EnergyFunctional.h
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,7 @@ class EnergyFunctional {
std::map<uint64_t,
Eigen::Vector2i,
std::less<uint64_t>,
Eigen::aligned_allocator<std::pair<uint64_t, Eigen::Vector2i>>
Eigen::aligned_allocator<std::pair<const uint64_t, Eigen::Vector2i>>
> connectivityMap;

private:
Expand Down

0 comments on commit fb5711b

Please sign in to comment.