PST File Format SDK v0.4
Loading...
Searching...
No Matches
pstsdk::hnid_stream_device Class Reference

Defines a stream device which can wrap one of the two prop sources. More...

#include <object.h>

+ Inheritance diagram for pstsdk::hnid_stream_device:
+ Collaboration diagram for pstsdk::hnid_stream_device:

Public Member Functions

std::streamsize read (char *pbuffer, std::streamsize n)
 Read data from this node into the buffer at the current position.
 
std::streampos seek (boost::iostreams::stream_offset off, std::ios_base::seekdir way)
 Move the current position in the stream.
 
 hnid_stream_device (const hid_stream_device &hid_device)
 Wrap a hid_stream_device.
 
 hnid_stream_device (const node_stream_device &node_device)
 Wrap a node_stream_device.
 

Detailed Description

Defines a stream device which can wrap one of the two prop sources.

An hnid_steam_device wraps either a hid_stream_device if the property being streamed is located in a heap, or a node_stream_device if the property being streamed is contained in it's own subnode.

It is a common feature in both types of property objects to allocate properties in the heap first, and then "roll over" to a subnode when/if the size of the property becomes too large to fit in a heap allocation.

See also
[MS-PST] 2.3.3.2

Definition at line 55 of file object.h.

Constructor & Destructor Documentation

◆ hnid_stream_device() [1/2]

pstsdk::hnid_stream_device::hnid_stream_device ( const hid_stream_device hid_device)
inline

Wrap a hid_stream_device.

Definition at line 66 of file object.h.

◆ hnid_stream_device() [2/2]

pstsdk::hnid_stream_device::hnid_stream_device ( const node_stream_device node_device)
inline

Wrap a node_stream_device.

Definition at line 68 of file object.h.

Member Function Documentation

◆ read()

std::streamsize pstsdk::hnid_stream_device::read ( char pbuffer,
std::streamsize  n 
)
inline

Read data from this node into the buffer at the current position.

Parameters
[out]pbufferThe buffer to store the results into
[in]nThe amount of data to read
Returns
The amount of data read

Definition at line 59 of file object.h.

◆ seek()

std::streampos pstsdk::hnid_stream_device::seek ( boost::iostreams::stream_offset  off,
std::ios_base::seekdir  way 
)
inline

Move the current position in the stream.

Parameters
[in]offThe offset to move the current position
[in]wayThe location to move the current position from
Returns
The new position

Definition at line 62 of file object.h.


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