SNAP Library 4.0, Developer Reference
2017-07-27 13:18:06
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
|
#include <blobbs.h>
Public Member Functions | |
TGBlobBs (const TStr &BlobBsFNm, const TFAccess &_Access=faRdOnly, const int &_MxSegLen=-1) | |
~TGBlobBs () | |
TGBlobBs & | operator= (const TGBlobBs &) |
TStr | GetVersionStr () const |
TBlobPt | PutBlob (const PSIn &SIn) |
TBlobPt | PutBlob (const TBlobPt &BlobPt, const PSIn &SIn) |
PSIn | GetBlob (const TBlobPt &BlobPt) |
void | DelBlob (const TBlobPt &BlobPt) |
TBlobPt | GetFirstBlobPt () |
TBlobPt | FFirstBlobPt () |
bool | FNextBlobPt (TBlobPt &TrvBlobPt, TBlobPt &BlobPt, PSIn &BlobSIn) |
Public Member Functions inherited from TBlobBs | |
UndefCopyAssign (TBlobBs) | |
TBlobBs () | |
virtual | ~TBlobBs () |
TBlobBs (TSIn &) | |
void | Save (TSOut &) const |
void | PutVersionStr (const PFRnd &FBlobBs) |
void | AssertVersionStr (const PFRnd &FBlobBs) |
TStr | GetBlobBsStateStr (const TBlobBsState &BlobBsState) |
int | GetStateStrLen () |
void | PutBlobBsStateStr (const PFRnd &FBlobBs, const TBlobBsState &State) |
void | AssertBlobBsStateStr (const PFRnd &FBlobBs, const TBlobBsState &State) |
void | PutMxSegLen (const PFRnd &FBlobBs, const int &MxSegLen) |
int | GetMxSegLen (const PFRnd &FBlobBs) |
void | GenBlockLenV (TIntV &BlockLenV) |
void | PutBlockLenV (const PFRnd &FBlobBs, const TIntV &BlockLenV) |
void | GetBlockLenV (const PFRnd &FBlobBs, TIntV &BlockLenV) |
void | GenFFreeBlobPtV (const TIntV &BlockLenV, TBlobPtV &FFreeBlobPtV) |
void | PutFFreeBlobPtV (const PFRnd &FBlobBs, const TBlobPtV &FFreeBlobPtV) |
void | GetFFreeBlobPtV (const PFRnd &FBlobBs, TBlobPtV &FFreeBlobPtV) |
void | GetAllocInfo (const int &BfL, const TIntV &BlockLenV, int &MxBfL, int &FFreeBlobPtN) |
uint | GetBeginBlobTag () |
uint | GetEndBlobTag () |
void | PutBlobTag (const PFRnd &FBlobBs, const TBlobTag &BlobTag) |
void | AssertBlobTag (const PFRnd &FBlobBs, const TBlobTag &BlobTag) |
void | PutBlobState (const PFRnd &FBlobBs, const TBlobState &State) |
TBlobState | GetBlobState (const PFRnd &FBlobBs) |
void | AssertBlobState (const PFRnd &FBlobBs, const TBlobState &State) |
void | AssertBfCsEqFlCs (const TCs &BfCs, const TCs &FCs) |
TBlobPt | PutBlob (const TStr &Str) |
bool | FNextBlobPt (TBlobPt &TrvBlobPt, PSIn &BlobSIn) |
Static Public Member Functions | |
static PBlobBs | New (const TStr &BlobBsFNm, const TFAccess &Access=faRdOnly, const int &MxSegLen=-1) |
static bool | Exists (const TStr &BlobBsFNm) |
Static Public Member Functions inherited from TBlobBs | |
static PBlobBs | Load (TSIn &) |
Static Private Member Functions | |
static TStr | GetNrBlobBsFNm (const TStr &BlobBsFNm) |
Private Attributes | |
PFRnd | FBlobBs |
TFAccess | Access |
int | MxSegLen |
TIntV | BlockLenV |
TBlobPtV | FFreeBlobPtV |
TBlobPt | FirstBlobPt |
Additional Inherited Members | |
Static Public Attributes inherited from TBlobBs | |
static const int | MnBlobBfL =16 |
static const int | MxBlobFLen =1000000000 |
static const TStr | MxSegLenVNm ="MxSegLen" |
static const TStr | BlockLenVNm ="BlockLenV" |
static const TStr | FFreeBlobPtVNm ="FFreeBlobPtV" |
TGBlobBs::TGBlobBs | ( | const TStr & | BlobBsFNm, |
const TFAccess & | _Access = faRdOnly , |
||
const int & | _MxSegLen = -1 |
||
) |
Definition at line 220 of file blobbs.cpp.
References Access, TBlobBs::AssertBlobBsStateStr(), TBlobBs::AssertVersionStr(), bbsClosed, bbsOpened, BlockLenV, TFRnd::Empty(), faCreate, Fail, faRdOnly, faRestore, faUpdate, FBlobBs, FFreeBlobPtV, FirstBlobPt, TFRnd::Flush(), TBlobBs::GenBlockLenV(), TBlobBs::GenFFreeBlobPtV(), TBlobBs::GetBlockLenV(), TBlobBs::GetFFreeBlobPtV(), TFRnd::GetFPos(), TBlobBs::GetMxSegLen(), GetNrBlobBsFNm(), TBlobBs::MxBlobFLen, MxSegLen, TFRnd::New(), TBlobBs::PutBlobBsStateStr(), TBlobBs::PutBlockLenV(), TBlobBs::PutFFreeBlobPtV(), TBlobBs::PutMxSegLen(), TBlobBs::PutVersionStr(), and TFRnd::SetFPos().
Referenced by New().
TGBlobBs::~TGBlobBs | ( | ) |
Definition at line 262 of file blobbs.cpp.
References Access, bbsClosed, BlockLenV, faRdOnly, FBlobBs, FFreeBlobPtV, TFRnd::Flush(), MxSegLen, TBlobBs::PutBlobBsStateStr(), TBlobBs::PutBlockLenV(), TBlobBs::PutFFreeBlobPtV(), TBlobBs::PutMxSegLen(), TBlobBs::PutVersionStr(), and TFRnd::SetFPos().
|
virtual |
Implements TBlobBs.
Definition at line 353 of file blobbs.cpp.
References Access, TBlobBs::AssertBlobState(), TBlobBs::AssertBlobTag(), BlockLenV, bsActive, bsFree, btBegin, btEnd, EAssert, faCreate, faRestore, faUpdate, FBlobBs, FFreeBlobPtV, TFRnd::Flush(), TBlobPt::GetAddr(), TBlobBs::GetAllocInfo(), TFRnd::GetFPos(), TFRnd::GetInt(), TCh::NullCh, TBlobBs::PutBlobState(), TFRnd::PutCh(), and TFRnd::SetFPos().
Referenced by PutBlob().
|
static |
Definition at line 410 of file blobbs.cpp.
References TFile::Exists(), and GetNrBlobBsFNm().
|
virtual |
Implements TBlobBs.
Definition at line 377 of file blobbs.cpp.
References TBlobBs::AssertBfCsEqFlCs(), TBlobBs::AssertBlobTag(), bsActive, bsFree, btBegin, btEnd, TBlobPt::Clr(), Fail, FBlobBs, forever, TBlobPt::GetAddr(), TBlobBs::GetBlobState(), TFRnd::GetCs(), TFRnd::GetFLen(), TFRnd::GetFPos(), TFRnd::GetInt(), TFRnd::GetSIn(), TFRnd::MoveFPos(), and TFRnd::SetFPos().
Implements TBlobBs.
Definition at line 339 of file blobbs.cpp.
References TBlobBs::AssertBfCsEqFlCs(), TBlobBs::AssertBlobState(), TBlobBs::AssertBlobTag(), bsActive, btBegin, btEnd, FBlobBs, TBlobPt::GetAddr(), TFRnd::GetCs(), TFRnd::GetInt(), TFRnd::GetSIn(), TFRnd::MoveFPos(), and TFRnd::SetFPos().
|
inlinevirtual |
Definition at line 213 of file blobbs.cpp.
References TStr::Empty(), and TStr::GetFExt().
Referenced by Exists(), and TGBlobBs().
|
inlinevirtual |
|
inlinestatic |
Definition at line 166 of file blobbs.h.
References Access, MxSegLen, and TGBlobBs().
Referenced by TMBlobBs::PutBlob(), and TMBlobBs::TMBlobBs().
Implements TBlobBs.
Definition at line 275 of file blobbs.cpp.
References Access, TBlobBs::AssertBlobState(), TBlobBs::AssertBlobTag(), BlockLenV, bsActive, bsFree, btBegin, btEnd, EAssert, faCreate, faRestore, faUpdate, FBlobBs, FFreeBlobPtV, TFRnd::Flush(), TBlobPt::GetAddr(), TBlobBs::GetAllocInfo(), TFRnd::GetFLen(), TFRnd::GetFPos(), TFRnd::GetInt(), TSIn::Len(), TBlobPt::LoadAddr(), TBlobBs::MxBlobFLen, MxSegLen, TCh::NullCh, TBlobBs::PutBlobState(), TBlobBs::PutBlobTag(), TFRnd::PutCh(), TFRnd::PutCs(), TFRnd::PutInt(), TFRnd::PutSIn(), and TFRnd::SetFPos().
Referenced by PutBlob().
Implements TBlobBs.
Definition at line 316 of file blobbs.cpp.
References Access, TBlobBs::AssertBlobState(), TBlobBs::AssertBlobTag(), bsActive, btBegin, btEnd, DelBlob(), EAssert, faCreate, faRestore, faUpdate, FBlobBs, TFRnd::Flush(), TBlobPt::GetAddr(), TFRnd::GetInt(), TSIn::Len(), TCh::NullCh, PutBlob(), TBlobBs::PutBlobTag(), TFRnd::PutCh(), TFRnd::PutCs(), TFRnd::PutInt(), TFRnd::PutSIn(), and TFRnd::SetFPos().
|
private |
Definition at line 157 of file blobbs.h.
Referenced by DelBlob(), New(), PutBlob(), TGBlobBs(), and ~TGBlobBs().
|
private |
Definition at line 159 of file blobbs.h.
Referenced by DelBlob(), PutBlob(), TGBlobBs(), and ~TGBlobBs().
|
private |
Definition at line 156 of file blobbs.h.
Referenced by DelBlob(), FNextBlobPt(), GetBlob(), PutBlob(), TGBlobBs(), and ~TGBlobBs().
|
private |
Definition at line 160 of file blobbs.h.
Referenced by DelBlob(), PutBlob(), TGBlobBs(), and ~TGBlobBs().
|
private |
Definition at line 161 of file blobbs.h.
Referenced by FFirstBlobPt(), GetFirstBlobPt(), and TGBlobBs().
|
private |
Definition at line 158 of file blobbs.h.
Referenced by New(), PutBlob(), TGBlobBs(), and ~TGBlobBs().