7   static const 
int MnBlobBfL;
 
    8   static const 
int Flags;
 
   14     Seg(0), Addr(
TUInt::Mx), FSet1(), FSet2(), FSet3(){}
 
   16     Seg(Pt.Seg), Addr(Pt.Addr),
 
   17     FSet1(Pt.FSet1), FSet2(Pt.FSet2), FSet3(Pt.FSet3){}
 
   20     Seg(_Seg), Addr(_Addr), FSet1(_FSet1), FSet2(_FSet2), FSet3(_FSet3){}
 
   22     Seg(_Seg), Addr(_Addr), FSet1(), FSet2(), FSet3(){}
 
   24     Seg(0), Addr(_Addr), FSet1(), FSet2(), FSet3(){}
 
   26     Seg(0), Addr(
uint(_Addr)), FSet1(), FSet2(), FSet3(){
IAssert(_Addr>=0);}
 
   33     FSet1.Save(SOut); FSet2.Save(SOut); FSet3.Save(SOut);}
 
   41     return (Seg==Pt.
Seg)&&(Addr==Pt.
Addr);}
 
   43     return (Seg<Pt.
Seg)||((Seg==Pt.
Seg)&&(Addr<Pt.
Addr));}
 
   55   void PutFlag(
const int& FlagN, 
const bool& Val);
 
   56   bool IsFlag(
const int& FlagN) 
const;
 
   59   void PutFSet(
const int& FSetN, 
const TB8Set& FSet);
 
   60   TB8Set GetFSet(
const int& FSetN);
 
   66     return TBlobPt(Seg, Addr, B8Set1, B8Set2, B8Set3);}
 
   69     FRnd->
PutUCh(FSet1.GetUCh()); FRnd->
PutUCh(FSet2.GetUCh());
 
   70     FRnd->
PutUCh(FSet3.GetUCh());}
 
   91   static const 
int MnBlobBfL;
 
   92   static const 
int MxBlobFLen;
 
  101   virtual TStr GetVersionStr() 
const=0;
 
  102   void PutVersionStr(
const PFRnd& FBlobBs);
 
  103   void AssertVersionStr(
const PFRnd& FBlobBs);
 
  111   void PutMxSegLen(
const PFRnd& FBlobBs, 
const int& MxSegLen);
 
  112   int GetMxSegLen(
const PFRnd& FBlobBs);
 
  115   void GenBlockLenV(
TIntV& BlockLenV);
 
  116   void PutBlockLenV(
const PFRnd& FBlobBs, 
const TIntV& BlockLenV);
 
  117   void GetBlockLenV(
const PFRnd& FBlobBs, 
TIntV& BlockLenV);
 
  120   void GenFFreeBlobPtV(
const TIntV& BlockLenV, 
TBlobPtV& FFreeBlobPtV);
 
  121   void PutFFreeBlobPtV(
const PFRnd& FBlobBs, 
const TBlobPtV& FFreeBlobPtV);
 
  122   void GetFFreeBlobPtV(
const PFRnd& FBlobBs, 
TBlobPtV& FFreeBlobPtV);
 
  125    const int& BfL, 
const TIntV& BlockLenV, 
int& MxBfL, 
int& FFreeBlobPtN);
 
  129   void PutBlobTag(
const PFRnd& FBlobBs, 
const TBlobTag& BlobTag);
 
  130   void AssertBlobTag(
const PFRnd& FBlobBs, 
const TBlobTag& BlobTag);
 
  136   void AssertBfCsEqFlCs(
const TCs& BfCs, 
const TCs& FCs);
 
  143   virtual void DelBlob(
const TBlobPt& BlobPt)=0;
 
  145   virtual TBlobPt GetFirstBlobPt()=0;
 
  146   virtual TBlobPt FFirstBlobPt()=0;
 
  149     TBlobPt BlobPt; 
return FNextBlobPt(TrvBlobPt, BlobPt, BlobSIn);}
 
  165    const int& _MxSegLen=-1);
 
  202    const int& _MxSegLen=-1);
 
  211     return TStr(
"Multiple-File Blob Base Format 1.0");}
 
bool FNextBlobPt(TBlobPt &TrvBlobPt, PSIn &BlobSIn)
 
void DelBlob(const TBlobPt &BlobPt)
 
TGBlobBs(const TStr &BlobBsFNm, const TFAccess &_Access=faRdOnly, const int &_MxSegLen=-1)
 
void DelBlob(const TBlobPt &BlobPt)
 
static PBlobBs New(const TStr &BlobBsFNm, const TFAccess &Access=faRdOnly, const int &MxSegLen=-1)
 
static void GetNrFPathFMid(const TStr &BlobBsFNm, TStr &NrFPath, TStr &NrFMid)
 
static TBlobPt Load(const PFRnd &FRnd)
 
void PutSeg(const uchar &_Seg)
 
TBlobPt & operator=(const TBlobPt &Pt)
 
bool operator==(const TBlobPt &Pt) const 
 
void SaveAddr(const PFRnd &FRnd) const 
 
static TStr GetSegFNm(const TStr &NrFPath, const TStr &NrFMid, const int &SegN)
 
bool FNextBlobPt(TBlobPt &TrvBlobPt, TBlobPt &BlobPt, PSIn &BlobSIn)
 
static bool Exists(const TStr &BlobBsFNm)
 
TBlobPt(const uchar &_Seg, const uint &_Addr)
 
void PutAddr(const uint &_Addr)
 
void PutUInt(const uint &UInt)
 
#define UndefCopyAssign(TNm)
 
TBlobPt(const uint &_Addr)
 
TBlobPt(const uchar &_Seg, const uint &_Addr, const TB8Set &_FSet1, const TB8Set &_FSet2, const TB8Set &_FSet3)
 
#define ClassTVQ(TNm, TNmV, TNmQ)
 
#define ClassTPV(TNm, PNm, TNmV)
 
static TStr GetNrBlobBsFNm(const TStr &BlobBsFNm)
 
TMBlobBs & operator=(const TMBlobBs &)
 
TBlobPt PutBlob(const PSIn &SIn)
 
static PSIn New(const TStr &Str)
 
TStr GetVersionStr() const 
 
static const TStr MxSegLenVNm
 
PSIn GetBlob(const TBlobPt &BlobPt)
 
PSIn GetBlob(const TBlobPt &BlobPt)
 
TBlobPt PutBlob(const TStr &Str)
 
static PBlobBs New(const TStr &BlobBsFNm, const TFAccess &Access=faRdOnly, const int &MxSegLen=-1)
 
void Save(const PFRnd &FRnd) const 
 
static TStr GetMainFNm(const TStr &NrFPath, const TStr &NrFMid)
 
TStr GetVersionStr() const 
 
void Save(const bool &Bool)
 
static PBlobBs Load(TSIn &)
 
bool FNextBlobPt(TBlobPt &TrvBlobPt, TBlobPt &BlobPt, PSIn &BlobSIn)
 
TBlobPt(const int &_Addr)
 
static const TStr BlockLenVNm
 
TBlobPt PutBlob(const PSIn &SIn)
 
bool operator<(const TBlobPt &Pt) const 
 
TBlobPt(const TBlobPt &Pt)
 
void MergeFlags(const TBlobPt &Pt)
 
int GetPrimHashCd() const 
 
static bool Exists(const TStr &BlobBsFNm)
 
TGBlobBs & operator=(const TGBlobBs &)
 
static TBlobPt LoadAddr(const PFRnd &FRnd, const uchar &Seg=0)
 
void Save(TSOut &SOut) const 
 
void PutUCh(const uchar &UCh)
 
static const TStr FFreeBlobPtVNm
 
TMBlobBs(const TStr &BlobBsFNm, const TFAccess &_Access=faRdOnly, const int &_MxSegLen=-1)