25#define NODE_NOTFOUND 0xFFFF
26#define DINDEX_PAGE_SIZE 512
48 ONDXKey(
const OUString& aStr, sal_uInt32 nRec);
49 ONDXKey(
double aVal, sal_uInt32 nRec);
68 static bool IsText(sal_Int32 eType);
127 std::unique_ptr<ONDXNode[]>
139 void Release(
bool bSave =
true);
181 assert(
nRefCount < (1 << 30) &&
"Do not add refs to dead objects" );
186 assert(
nRefCount < (1 << 30) &&
"Do not add refs to dead objects" );
198#if OSL_DEBUG_LEVEL > 1
257 ,nRecord(rKey.nRecord)
virtual const ORowSetValue & getValue() const override
virtual void setValue(const ORowSetValue &_rVal) override
bool operator==(const ONDXKey &rKey) const
int Compare(const ONDXKey &rKey) const
bool operator<(const ONDXKey &rKey) const
void setRecord(sal_uInt32 _nRec)
ONDXKey & operator=(const ONDXKey &rKey)
static bool IsText(sal_Int32 eType)
sal_uInt32 GetRecord() const
bool operator>(const ONDXKey &rKey) const
bool operator!=(const ONDXKey &rKey) const
bool operator<=(const ONDXKey &rKey) const
const ONDXKey & GetKey() const
void SetChild(ONDXPagePtr aCh=ONDXPagePtr(), ONDXPage *=nullptr)
void Read(SvStream &rStream, ODbaseIndex const &)
ONDXNode(const ONDXKey &rKey)
ONDXPagePtr & GetChild(ODbaseIndex *pIndex=nullptr, ONDXPage *=nullptr)
void Write(SvStream &rStream, const ONDXPage &rPage) const
ONDXPagePtr & operator=(ONDXPagePtr const &rRef)
sal_uInt32 GetPagePos() const
ONDXPage * operator->() const
friend SvStream & WriteONDXPagePtr(SvStream &rStream, const ONDXPagePtr &)
friend SvStream & operator>>(SvStream &rStream, ONDXPagePtr &)
bool Append(ONDXNode &rNode)
ONDXPagePtr & GetChild(ODbaseIndex const *pIndex=nullptr)
void SetChild(ONDXPagePtr aCh)
sal_uInt32 GetPagePos() const
sal_uInt16 Search(const ONDXKey &rSearch)
ONDXNode Split(ONDXPage &rPage)
ONDXPage(ODbaseIndex &rIndex, sal_uInt32 nPos, ONDXPage *)
void SetParent(ONDXPagePtr aPa)
void SetPagePos(sal_uInt32 nPage)
ONDXNode & operator[](sal_uInt16 nPos)
friend SvStream & operator>>(SvStream &rStream, ONDXPage &)
bool Find(const ONDXKey &)
sal_uInt16 FindPos(const ONDXKey &rKey) const
void SearchAndReplace(const ONDXKey &rSearch, ONDXKey const &rReplace)
void Merge(sal_uInt16 nParentNodePos, const ONDXPagePtr &xPage)
void SetModified(bool bMod)
bool Insert(ONDXNode &rNode, sal_uInt32 nRowsLeft=0)
std::unique_ptr< ONDXNode[]> ppNodes
void Release(bool bSave=true)
const ODbaseIndex & GetIndex() const
friend SvStream & WriteONDXPage(SvStream &rStream, const ONDXPage &)
const ONDXPagePtr & GetParent() const
sal_Int32 getDBType() const
SvStream & operator>>(SvStream &rStream, ODbaseIndex &)
SvStream & WriteONDXPage(SvStream &rStream, const ONDXPage &rPage)
file::OOperand ONDXKey_BASE
SvStream & WriteONDXPagePtr(SvStream &rStream, const ONDXPagePtr &)