ReUseX  0.0.5
3D Point Cloud Processing for Building Reuse
Loading...
Searching...
No Matches
rux::database::FrameRouter Class Reference

Router for sensor_frames (read-only). More...

#include <frame_router.hpp>

Inheritance diagram for rux::database::FrameRouter:
Collaboration diagram for rux::database::FrameRouter:

Public Member Functions

DataPayload get (const std::vector< PathComponent > &components) override
 Get resource data at the given path.
void set (const std::vector< PathComponent > &components, const DataPayload &data) override
 Set resource data at the given path.
void del (const std::vector< PathComponent > &components) override
 Delete resource at the given path.
std::vector< std::string > list () const override
 List all items in this collection.
 ResourceRouter (std::shared_ptr< reusex::ProjectDB > db)
Public Member Functions inherited from rux::database::ResourceRouter
 ResourceRouter (std::shared_ptr< reusex::ProjectDB > db)
virtual ~ResourceRouter ()=default
std::optional< std::string > resolve_index (int index) const
 Resolve array index to item name/id.

Additional Inherited Members

Protected Attributes inherited from rux::database::ResourceRouter
std::shared_ptr< reusex::ProjectDBdb_

Detailed Description

Router for sensor_frames (read-only).

Frames are referenced by integer node_id.

Handles paths like:

  • frames → list all node_ids (JSON array)
  • frames.<id> → metadata for one frame (JSON)
  • frames[N] → metadata for the Nth frame (JSON)
  • frames.<id>.metadata → metadata (JSON)
  • frames.<id>.color → JPEG color image (binary)
  • frames.<id>.depth → PNG depth image, CV_16UC1 mm (binary)
  • frames.<id>.confidence → PNG confidence image, CV_8UC1 (binary)
  • frames.<id>.pose → 4x4 world pose (JSON, row-major)
  • frames.<id>.intrinsics → camera intrinsics (JSON)
  • frames.<id>.timestamp → epoch seconds (JSON number or null)

Definition at line 28 of file frame_router.hpp.

Member Function Documentation

◆ del()

void rux::database::FrameRouter::del ( const std::vector< PathComponent > & components)
overridevirtual

Delete resource at the given path.

Parameters
componentsParsed path components (after collection)
Exceptions
std::runtime_errorif operation fails

Implements rux::database::ResourceRouter.

◆ get()

DataPayload rux::database::FrameRouter::get ( const std::vector< PathComponent > & components)
overridevirtual

Get resource data at the given path.

Parameters
componentsParsed path components (after collection)
Returns
Data payload
Exceptions
std::runtime_errorif path is invalid or resource not found

Implements rux::database::ResourceRouter.

◆ list()

std::vector< std::string > rux::database::FrameRouter::list ( ) const
overridevirtual

List all items in this collection.

Used for wildcard expansion and array indexing. Returns items in deterministic order (see MEMORY.md).

Returns
Ordered list of item names/ids

Implements rux::database::ResourceRouter.

◆ ResourceRouter()

rux::database::ResourceRouter::ResourceRouter ( std::shared_ptr< reusex::ProjectDB > db)
inlineexplicit

Definition at line 28 of file resource_router.hpp.

◆ set()

void rux::database::FrameRouter::set ( const std::vector< PathComponent > & components,
const DataPayload & data )
overridevirtual

Set resource data at the given path.

Parameters
componentsParsed path components (after collection)
dataInput data
Exceptions
std::runtime_errorif operation fails

Implements rux::database::ResourceRouter.


The documentation for this class was generated from the following file: