SNAP Library 6.0, Developer Reference
2020-12-09 16:24:20
SNAP, a general purpose, high performance system for analysis and manipulation of large networks
|
#include <blobbs.h>
Public Member Functions | |
UndefCopyAssign (TBlobBs) | |
TBlobBs () | |
virtual | ~TBlobBs () |
TBlobBs (TSIn &) | |
void | Save (TSOut &) const |
virtual TStr | GetVersionStr () const =0 |
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) |
virtual TBlobPt | PutBlob (const PSIn &SIn)=0 |
TBlobPt | PutBlob (const TStr &Str) |
virtual TBlobPt | PutBlob (const TBlobPt &BlobPt, const PSIn &SIn)=0 |
virtual PSIn | GetBlob (const TBlobPt &BlobPt)=0 |
virtual void | DelBlob (const TBlobPt &BlobPt)=0 |
virtual TBlobPt | GetFirstBlobPt ()=0 |
virtual TBlobPt | FFirstBlobPt ()=0 |
virtual bool | FNextBlobPt (TBlobPt &TrvBlobPt, TBlobPt &BlobPt, PSIn &BlobSIn)=0 |
bool | FNextBlobPt (TBlobPt &TrvBlobPt, PSIn &BlobSIn) |
Static Public Member Functions | |
static PBlobBs | Load (TSIn &) |
Static Public Attributes | |
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" |
Private Attributes | |
TCRef | CRef |
Friends | |
class | TPt< TBlobBs > |
|
inline |
Definition at line 205 of file blobbs.cpp.
References TCs::Get().
Referenced by TGBlobBs::FNextBlobPt(), and TGBlobBs::GetBlob().
void TBlobBs::AssertBlobBsStateStr | ( | const PFRnd & | FBlobBs, |
const TBlobBsState & | State | ||
) |
Definition at line 90 of file blobbs.cpp.
References GetBlobBsStateStr(), GetStateStrLen(), TFRnd::GetStr(), TInt::GetStr(), and TExcept::ThrowFull().
Referenced by TGBlobBs::TGBlobBs().
void TBlobBs::AssertBlobState | ( | const PFRnd & | FBlobBs, |
const TBlobState & | State | ||
) |
Definition at line 201 of file blobbs.cpp.
References EAssert, and TFRnd::GetCh().
Referenced by TGBlobBs::DelBlob(), TGBlobBs::GetBlob(), and TGBlobBs::PutBlob().
Definition at line 185 of file blobbs.cpp.
References btBegin, btEnd, EAssert, GetBeginBlobTag(), GetEndBlobTag(), TFRnd::GetUInt(), and TExcept::Throw().
Referenced by TGBlobBs::DelBlob(), TGBlobBs::FNextBlobPt(), TGBlobBs::GetBlob(), and TGBlobBs::PutBlob().
void TBlobBs::AssertVersionStr | ( | const PFRnd & | FBlobBs | ) |
Definition at line 68 of file blobbs.cpp.
References EAssert, TFRnd::GetStr(), GetVersionStr(), and TStr::Len().
Referenced by TGBlobBs::TGBlobBs().
|
pure virtual |
Definition at line 148 of file blobbs.h.
void TBlobBs::GenBlockLenV | ( | TIntV & | BlockLenV | ) |
Definition at line 114 of file blobbs.cpp.
References TVec< TVal, TSizeTy >::Add(), TVec< TVal, TSizeTy >::Clr(), EAssert, TB4Def::GetP2(), TVec< TVal, TSizeTy >::Last(), TB4Def::MxP2Exp, and TVec< TVal, TSizeTy >::Sort().
Referenced by TGBlobBs::TGBlobBs().
Definition at line 148 of file blobbs.cpp.
References TVec< TVal, TSizeTy >::Gen(), and TVec< TVal, TSizeTy >::Len().
Referenced by TGBlobBs::TGBlobBs().
void TBlobBs::GetAllocInfo | ( | const int & | BfL, |
const TIntV & | BlockLenV, | ||
int & | MxBfL, | ||
int & | FFreeBlobPtN | ||
) |
Definition at line 168 of file blobbs.cpp.
References EAssert, and TVec< TVal, TSizeTy >::Len().
Referenced by TGBlobBs::DelBlob(), and TGBlobBs::PutBlob().
|
inline |
Definition at line 127 of file blobbs.h.
Referenced by AssertBlobTag(), and PutBlobTag().
TStr TBlobBs::GetBlobBsStateStr | ( | const TBlobBsState & | BlobBsState | ) |
Definition at line 75 of file blobbs.cpp.
References bbsClosed, bbsOpened, EAssert, Fail, GetStateStrLen(), and TStr::Len().
Referenced by AssertBlobBsStateStr(), and PutBlobBsStateStr().
TBlobState TBlobBs::GetBlobState | ( | const PFRnd & | FBlobBs | ) |
Definition at line 197 of file blobbs.cpp.
References TFRnd::GetCh().
Referenced by TGBlobBs::FNextBlobPt().
Definition at line 138 of file blobbs.cpp.
References BlockLenVNm, EAssert, TVec< TVal, TSizeTy >::Gen(), TFRnd::GetInt(), TFRnd::GetStr(), TStr::Len(), and TVec< TVal, TSizeTy >::Len().
Referenced by TGBlobBs::TGBlobBs().
|
inline |
Definition at line 128 of file blobbs.h.
Referenced by AssertBlobTag(), and PutBlobTag().
Definition at line 160 of file blobbs.cpp.
References EAssert, FFreeBlobPtVNm, TVec< TVal, TSizeTy >::Gen(), TFRnd::GetInt(), TFRnd::GetStr(), TStr::Len(), TVec< TVal, TSizeTy >::Len(), and TBlobPt::Load().
Referenced by TGBlobBs::TGBlobBs().
int TBlobBs::GetMxSegLen | ( | const PFRnd & | FBlobBs | ) |
Definition at line 107 of file blobbs.cpp.
References EAssert, TFRnd::GetInt(), TFRnd::GetStr(), TStr::Len(), and MxSegLenVNm.
Referenced by TGBlobBs::TGBlobBs().
|
inline |
Definition at line 106 of file blobbs.h.
Referenced by AssertBlobBsStateStr(), and GetBlobBsStateStr().
|
pure virtual |
Implemented in TMBlobBs, and TGBlobBs.
Referenced by AssertVersionStr(), and PutVersionStr().
Definition at line 139 of file blobbs.h.
References TStrIn::New().
void TBlobBs::PutBlobBsStateStr | ( | const PFRnd & | FBlobBs, |
const TBlobBsState & | State | ||
) |
Definition at line 86 of file blobbs.cpp.
References GetBlobBsStateStr(), and TFRnd::PutStr().
Referenced by TGBlobBs::TGBlobBs(), and TGBlobBs::~TGBlobBs().
void TBlobBs::PutBlobState | ( | const PFRnd & | FBlobBs, |
const TBlobState & | State | ||
) |
Definition at line 193 of file blobbs.cpp.
References TFRnd::PutCh().
Referenced by TGBlobBs::DelBlob(), and TGBlobBs::PutBlob().
Definition at line 177 of file blobbs.cpp.
References btBegin, btEnd, Fail, GetBeginBlobTag(), GetEndBlobTag(), and TFRnd::PutUInt().
Referenced by TGBlobBs::PutBlob().
Definition at line 130 of file blobbs.cpp.
References BlockLenVNm, TVec< TVal, TSizeTy >::Len(), TFRnd::PutInt(), and TFRnd::PutStr().
Referenced by TGBlobBs::TGBlobBs(), and TGBlobBs::~TGBlobBs().
Definition at line 152 of file blobbs.cpp.
References FFreeBlobPtVNm, TVec< TVal, TSizeTy >::Len(), TFRnd::PutInt(), TFRnd::PutStr(), and TVec< TVal, TSizeTy >::Save().
Referenced by TGBlobBs::TGBlobBs(), and TGBlobBs::~TGBlobBs().
void TBlobBs::PutMxSegLen | ( | const PFRnd & | FBlobBs, |
const int & | MxSegLen | ||
) |
Definition at line 102 of file blobbs.cpp.
References MxSegLenVNm, TFRnd::PutInt(), and TFRnd::PutStr().
Referenced by TGBlobBs::TGBlobBs(), and TGBlobBs::~TGBlobBs().
void TBlobBs::PutVersionStr | ( | const PFRnd & | FBlobBs | ) |
Definition at line 64 of file blobbs.cpp.
References GetVersionStr(), and TFRnd::PutStr().
Referenced by TGBlobBs::TGBlobBs(), and TGBlobBs::~TGBlobBs().
|
inline |
TBlobBs::UndefCopyAssign | ( | TBlobBs | ) |
|
static |
Definition at line 114 of file blobbs.h.
Referenced by GetBlockLenV(), and PutBlockLenV().
|
static |
Definition at line 119 of file blobbs.h.
Referenced by GetFFreeBlobPtV(), and PutFFreeBlobPtV().
|
static |
Definition at line 92 of file blobbs.h.
Referenced by TGBlobBs::PutBlob(), TGBlobBs::TGBlobBs(), and TMBlobBs::TMBlobBs().
|
static |
Definition at line 110 of file blobbs.h.
Referenced by GetMxSegLen(), and PutMxSegLen().