Fennel: SegStream Class Reference (original) (raw)
SegStream is a common base for SegInputStream and SegOutputStream. More...
#include <[SegStream.h](SegStream%5F8h-source.html)>
Inheritance diagram for SegStream:

| Public Member Functions | |
|---|---|
| virtual void | getSegPos (SegStreamPosition &pos)=0 |
| Obtains the current stream position. | |
| SharedSegment | getSegment () const |
| **Returns:**segment accessed by this stream | |
| SegmentAccessor const & | getSegmentAccessor () const |
| **Returns:**segment accessor used by this stream | |
| FileSize | getOffset () const |
| **Returns:**current offset from beginning of stream | |
| bool | isClosed () const |
| **Returns:**whether the object has been closed | |
| void | close () |
| Closes this object, releasing any unallocated resources. | |
| Protected Member Functions | |
| virtual void | closeImpl () |
| Must be implemented by derived class to release any resources. | |
| SegStream (SegmentAccessor const &, uint cbExtraHeader) | |
| Protected Attributes | |
| SegmentAccessor | segmentAccessor |
| Accessor for segment containing stream data. | |
| SegStreamLock | pageLock |
| Lock held on current page, if any. | |
| uint | cbPageHeader |
| Number of bytes in page header. | |
| FileSize | cbOffset |
| Byte position in stream. | |
| bool | needsClose |
Detailed Description
SegStream is a common base for SegInputStream and SegOutputStream.
Definition at line 90 of file SegStream.h.
Constructor & Destructor Documentation
Member Function Documentation
| void SegStream::closeImpl | ( | | ) | [protected, virtual] | | ------------------------- | - | | - | ---------------------- |
| FileSize ByteStream::getOffset | ( | | ) | const [inline, inherited] | | ---------------------------------------------------------------------------------- | - | | - | --------------------------- |
| bool ClosableObject::isClosed | ( | | ) | const [inline, inherited] | | ----------------------------- | - | | - | --------------------------- |
Returns:
whether the object has been closed
Definition at line 58 of file ClosableObject.h.
| void ClosableObject::close | ( | | ) | [inherited] | | -------------------------- | - | | - | ------------- |
Closes this object, releasing any unallocated resources.
Reimplemented in CollectExecStream, CorrelationJoinExecStream, LcsClusterAppendExecStream, and LcsClusterReplaceExecStream.
Definition at line 39 of file ClosableObject.cpp.
References ClosableObject::closeImpl(), and ClosableObject::needsClose.
Referenced by CacheImpl< PageT, VictimPolicyT >::allocatePages(), LcsRowScanBaseExecStream::closeImpl(), ExecStreamGraphImpl::closeImpl(), FlatFileBuffer::open(), ClosableObjectDestructor::operator()(), and Segment::~Segment().
Member Data Documentation
Byte position in stream.
Definition at line 41 of file ByteStream.h.
Referenced by ByteStream::ByteStream(), ByteInputStream::consumeReadPointer(), ByteOutputStream::consumeWritePointer(), ByteStream::getOffset(), SegOutputStream::getSegPos(), SegInputStream::getSegPos(), ByteInputStream::readBytes(), ByteInputStream::reset(), ByteArrayInputStream::resetArray(), ByteInputStream::seekBackward(), SegInputStream::seekSegPos(), and ByteOutputStream::writeBytes().
The documentation for this class was generated from the following files:
- /home/pub/open/dev/fennel/segment/SegStream.h
- /home/pub/open/dev/fennel/segment/SegStream.cpp
