Template Function ouster::sdk::osf::metadata_pointer_as

Function Documentation

template<typename MetadataDerived, typename MetadataBase>
std::shared_ptr<MetadataDerived> ouster::sdk::osf::metadata_pointer_as(const std::shared_ptr<MetadataBase> &m)

Safe and convenient cast of shared_ptr<MetadataEntry> to concrete derived class using either shortcut (dynamic_pointer_cast) when it’s save to do so or reconstructs a new copy of the object from underlying data.

Template Parameters:
  • MetadataDerived – The cpp type of the derived object.

  • MetadataBase – The cpp type of the metadata base.

Parameters:

m[in] The MetadataBase to convert to MetadataDerived.

Returns:

The MetadataBase cast as a MetadataDerived pointer.