OpenVDB  12.0.0
Public Types | Public Member Functions | Friends | List of all members
PageHandle Class Reference

A PageHandle holds a unique ptr to a Page and a specific stream pointer to a point within the decompressed Page buffer. More...

#include <openvdb/points/StreamCompression.h>

Public Types

using Ptr = std::unique_ptr< PageHandle >
 

Public Member Functions

 PageHandle (const Page::Ptr &page, const int index, const int size)
 Create the page handle. More...
 
Pagepage ()
 Retrieve a reference to the stored page. More...
 
int size () const
 Return the size of the buffer. More...
 
std::unique_ptr< char[]> read ()
 Read and return the buffer, loading and decompressing the Page if necessary. More...
 
Ptr copy ()
 Return a copy of this PageHandle. More...
 

Friends

class ::TestStreamCompression
 

Detailed Description

A PageHandle holds a unique ptr to a Page and a specific stream pointer to a point within the decompressed Page buffer.

Member Typedef Documentation

using Ptr = std::unique_ptr<PageHandle>

Constructor & Destructor Documentation

PageHandle ( const Page::Ptr page,
const int  index,
const int  size 
)

Create the page handle.

Parameters
pagea shared ptr to the page that stores the buffer
indexstart position of the buffer to be read
sizetotal size of the buffer to be read in bytes

Member Function Documentation

Ptr copy ( )
inline

Return a copy of this PageHandle.

Page& page ( )

Retrieve a reference to the stored page.

std::unique_ptr<char[]> read ( )

Read and return the buffer, loading and decompressing the Page if necessary.

int size ( ) const
inline

Return the size of the buffer.

Friends And Related Function Documentation

friend class ::TestStreamCompression
friend