Public Member Functions | Protected Attributes

SeisSequentialWriter Class Reference

List of all members.

Public Member Functions

 SeisSequentialWriter (SeisTrcWriter *, int buffsize=-1)
 ~SeisSequentialWriter ()
bool announceTrace (const BinID &)
bool submitTrace (SeisTrc *, bool waitforbuffer=true)
const char * errMsg () const

Protected Attributes

SeisTrcWriterwriter_
TypeSet< BinIDannouncedtraces_
Threads::ConditionVar lock_
ObjectSet< SeisTrcoutputs_
const int maxbuffersize_
BinID latestbid_
FixedString errmsg_

Detailed Description

Writes traces that are submitted in random order in the correct sequence.


Constructor & Destructor Documentation

SeisSequentialWriter::SeisSequentialWriter ( SeisTrcWriter ,
int  buffsize = -1 
)

Writer is owned by caller, not mine. Default bufsize is 2xnrprocessors.

SeisSequentialWriter::~SeisSequentialWriter (  ) 

Member Function Documentation

bool SeisSequentialWriter::announceTrace ( const BinID  ) 

Tell the writer that this binid will be submitted later.

const char* SeisSequentialWriter::errMsg (  )  const [inline]
bool SeisSequentialWriter::submitTrace ( SeisTrc ,
bool  waitforbuffer = true 
)

Trc becomes mine. If waitforbuffer is true and buffer is full, wait until buffer gets smaller.


Member Data Documentation

const int SeisSequentialWriter::maxbuffersize_ [protected]