FStreamSizeHolder Class Reference

FStreamSizeHolder Declaration remembers size of stream chunk for backward compatibility. More...

#include <fstreamer.h>

Public Member Functions

 FStreamSizeHolder (FStreamer &s)
void beginWrite ()
 remembers position and writes 0
int32 endWrite ()
 writes and returns size (since the start marker)
int32 beginRead ()
 returns size
void endRead ()
 jump to end of chunk

Protected Attributes

FStreamerstream
int64 sizePos

Detailed Description

FStreamSizeHolder Declaration remembers size of stream chunk for backward compatibility.

Example:

   externalize (a)
   {
      FStreamSizeHolder sizeHolder;
      sizeHolder.beginWrite ();  // sets start mark, writes dummy size
      a << ....
      sizeHolder.endWrite ();    // jumps to start mark, updates size, jumps back here
   }

   internalize (a)
   {
      FStreamSizeHolder sizeHolder;
      sizeHolder.beginRead ();   // reads size, mark
      a >> ....
      sizeHolder.endRead ();     // jumps forward if new version has larger size
   }

Constructor & Destructor Documentation


Member Function Documentation

void beginWrite (  ) 

remembers position and writes 0

int32 endWrite (  ) 

writes and returns size (since the start marker)

int32 beginRead (  ) 

returns size

void endRead (  ) 

jump to end of chunk


Field Documentation

FStreamer& stream [protected]
int64 sizePos [protected]
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines
Empty

Copyright ©2013 Steinberg Media Technologies GmbH. All Rights Reserved.