Signet Forge 0.1.0
C++20 Parquet library with AI-native extensions
DEMO
Loading...
Searching...
No Matches
signet::forge::HybridReader Class Reference

Reads StreamRecords across historical Parquet files and (optionally) a live StreamingSink ring buffer snapshot. More...

#include <streaming_sink.hpp>

Public Types

using QueryOptions = HybridQueryOptions
 Alias for per-query filter options.
 
using Options = HybridReaderOptions
 Alias for construction-time options.
 

Public Member Functions

 HybridReader (const StreamingSink &sink)
 Construct from a live StreamingSink: captures a snapshot of the ring buffer plus the list of historical Parquet files already written.
 
 HybridReader (std::vector< std::string > parquet_files)
 Construct from an explicit list of Parquet file paths (no live ring).
 
expected< std::vector< StreamRecord > > read (QueryOptions opts={}) const
 Read all matching records from historical Parquet files.
 
expected< std::vector< StreamRecord > > read_all () const
 Read all records applying the filters set at construction (via Options).
 
size_t num_files () const
 Number of historical Parquet files available.
 
size_t num_live () const
 Number of live records visible in ring snapshot (0 unless flush() was called first).
 

Static Public Member Functions

static expected< HybridReadercreate (Options opts)
 Create a HybridReader with pre-configured filters.
 

Detailed Description

Reads StreamRecords across historical Parquet files and (optionally) a live StreamingSink ring buffer snapshot.

Construct from a StreamingSink to capture both historical files and a count of live records, or from an explicit list of Parquet paths. For a precise live snapshot, call sink.flush() before constructing.

See also
StreamingSink, StreamRecord, HybridReaderOptions, HybridQueryOptions

Definition at line 882 of file streaming_sink.hpp.

Member Typedef Documentation

◆ Options

Alias for construction-time options.

Definition at line 887 of file streaming_sink.hpp.

◆ QueryOptions

Alias for per-query filter options.

Definition at line 885 of file streaming_sink.hpp.

Constructor & Destructor Documentation

◆ HybridReader() [1/2]

signet::forge::HybridReader::HybridReader ( const StreamingSink sink)
inlineexplicit

Construct from a live StreamingSink: captures a snapshot of the ring buffer plus the list of historical Parquet files already written.

Definition at line 911 of file streaming_sink.hpp.

◆ HybridReader() [2/2]

signet::forge::HybridReader::HybridReader ( std::vector< std::string >  parquet_files)
inlineexplicit

Construct from an explicit list of Parquet file paths (no live ring).

Definition at line 931 of file streaming_sink.hpp.

Member Function Documentation

◆ create()

static expected< HybridReader > signet::forge::HybridReader::create ( Options  opts)
inlinestatic

Create a HybridReader with pre-configured filters.

Parameters
optsOptions including Parquet file list and filter parameters.
Returns
Configured HybridReader.

Definition at line 897 of file streaming_sink.hpp.

◆ num_files()

size_t signet::forge::HybridReader::num_files ( ) const
inline

Number of historical Parquet files available.

Definition at line 1031 of file streaming_sink.hpp.

◆ num_live()

size_t signet::forge::HybridReader::num_live ( ) const
inline

Number of live records visible in ring snapshot (0 unless flush() was called first).

Definition at line 1034 of file streaming_sink.hpp.

◆ read()

expected< std::vector< StreamRecord > > signet::forge::HybridReader::read ( QueryOptions  opts = {}) const
inline

Read all matching records from historical Parquet files.

Definition at line 941 of file streaming_sink.hpp.

◆ read_all()

expected< std::vector< StreamRecord > > signet::forge::HybridReader::read_all ( ) const
inline

Read all records applying the filters set at construction (via Options).

Definition at line 1018 of file streaming_sink.hpp.


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