LibreOffice Module sc (master) 1
Classes | Public Types | Public Member Functions | Private Attributes | List of all members
ScSortInfoArray Class Reference

Classes

struct  Cell
 
struct  Row
 

Public Types

typedef std::vector< RowRowsType
 

Public Member Functions

 ScSortInfoArray (const ScSortInfoArray &)=delete
 
const ScSortInfoArrayoperator= (const ScSortInfoArray &)=delete
 
 ScSortInfoArray (sal_uInt16 nSorts, SCCOLROW nInd1, SCCOLROW nInd2)
 
void SetKeepQuery (bool b)
 
bool IsKeepQuery () const
 
void SetUpdateRefs (bool b)
 
bool IsUpdateRefs () const
 
std::unique_ptr< ScSortInfo[]> const & GetFirstArray () const
 Call this only during normal sorting, not from reordering. More...
 
ScSortInfo & Get (sal_uInt16 nSort, SCCOLROW nInd)
 Call this only during normal sorting, not from reordering. More...
 
void Swap (SCCOLROW nInd1, SCCOLROW nInd2)
 Call this only during normal sorting, not from reordering. More...
 
void SetOrderIndices (std::vector< SCCOLROW > &&rIndices)
 
void ReorderByRow (const std::vector< SCCOLROW > &rIndices)
 
sal_uInt16 GetUsedSorts () const
 
SCCOLROW GetStart () const
 
SCCOLROW GetLast () const
 
const std::vector< SCCOLROW > & GetOrderIndices () const
 
RowsTypeInitDataRows (size_t nRowSize, size_t nColSize)
 
RowsTypeGetDataRows ()
 

Private Attributes

std::unique_ptr< RowsTypempRows
 
std::vector< std::unique_ptr< ScSortInfo[]> > mvppInfo
 row-wise data table for sort by row operation. More...
 
SCCOLROW nStart
 
SCCOLROW mnLastIndex
 
std::vector< SCCOLROWmaOrderIndices
 index of last non-empty cell position. More...
 
bool mbKeepQuery
 
bool mbUpdateRefs
 

Detailed Description

Definition at line 231 of file table3.cxx.

Member Typedef Documentation

◆ RowsType

typedef std::vector<Row> ScSortInfoArray::RowsType

Definition at line 256 of file table3.cxx.

Constructor & Destructor Documentation

◆ ScSortInfoArray() [1/2]

ScSortInfoArray::ScSortInfoArray ( const ScSortInfoArray )
delete

◆ ScSortInfoArray() [2/2]

ScSortInfoArray::ScSortInfoArray ( sal_uInt16  nSorts,
SCCOLROW  nInd1,
SCCOLROW  nInd2 
)
inline

Definition at line 273 of file table3.cxx.

References i, maOrderIndices, mvppInfo, nCount, and nStart.

Member Function Documentation

◆ Get()

ScSortInfo & ScSortInfoArray::Get ( sal_uInt16  nSort,
SCCOLROW  nInd 
)
inline

Call this only during normal sorting, not from reordering.

Definition at line 312 of file table3.cxx.

References mvppInfo, and nStart.

Referenced by ScTable::Compare().

◆ GetDataRows()

RowsType * ScSortInfoArray::GetDataRows ( )
inline

Definition at line 389 of file table3.cxx.

References mpRows.

◆ GetFirstArray()

std::unique_ptr< ScSortInfo[]> const & ScSortInfoArray::GetFirstArray ( ) const
inline

Call this only during normal sorting, not from reordering.

Definition at line 304 of file table3.cxx.

References mvppInfo.

◆ GetLast()

SCCOLROW ScSortInfoArray::GetLast ( ) const
inline

◆ GetOrderIndices()

const std::vector< SCCOLROW > & ScSortInfoArray::GetOrderIndices ( ) const
inline

Definition at line 380 of file table3.cxx.

References maOrderIndices.

Referenced by ScTable::SortReorderByColumn(), and ScTable::SortReorderByRowRefUpdate().

◆ GetStart()

SCCOLROW ScSortInfoArray::GetStart ( ) const
inline

◆ GetUsedSorts()

sal_uInt16 ScSortInfoArray::GetUsedSorts ( ) const
inline

Definition at line 375 of file table3.cxx.

References mvppInfo.

◆ InitDataRows()

RowsType & ScSortInfoArray::InitDataRows ( size_t  nRowSize,
size_t  nColSize 
)
inline

Definition at line 382 of file table3.cxx.

References mpRows.

◆ IsKeepQuery()

bool ScSortInfoArray::IsKeepQuery ( ) const
inline

Definition at line 295 of file table3.cxx.

References mbKeepQuery.

Referenced by ScTable::SortReorderByRow(), and ScTable::SortReorderByRowRefUpdate().

◆ IsUpdateRefs()

bool ScSortInfoArray::IsUpdateRefs ( ) const
inline

◆ operator=()

const ScSortInfoArray & ScSortInfoArray::operator= ( const ScSortInfoArray )
delete

◆ ReorderByRow()

void ScSortInfoArray::ReorderByRow ( const std::vector< SCCOLROW > &  rIndices)
inline
Parameters
rIndicesindices are actual row positions on the sheet, not an offset from the top row.

Definition at line 351 of file table3.cxx.

References maOrderIndices, mpRows, nPos, and nStart.

◆ SetKeepQuery()

void ScSortInfoArray::SetKeepQuery ( bool  b)
inline

Definition at line 293 of file table3.cxx.

References mbKeepQuery.

◆ SetOrderIndices()

void ScSortInfoArray::SetOrderIndices ( std::vector< SCCOLROW > &&  rIndices)
inline

Definition at line 342 of file table3.cxx.

References maOrderIndices.

◆ SetUpdateRefs()

void ScSortInfoArray::SetUpdateRefs ( bool  b)
inline

Definition at line 297 of file table3.cxx.

References mbUpdateRefs.

◆ Swap()

void ScSortInfoArray::Swap ( SCCOLROW  nInd1,
SCCOLROW  nInd2 
)
inline

Call this only during normal sorting, not from reordering.

Definition at line 320 of file table3.cxx.

References maOrderIndices, mpRows, mvppInfo, n1, n2, and nStart.

Referenced by ScTable::DecoladeRow(), and ScTable::QuickSort().

Member Data Documentation

◆ maOrderIndices

std::vector<SCCOLROW> ScSortInfoArray::maOrderIndices
private

index of last non-empty cell position.

Definition at line 265 of file table3.cxx.

Referenced by GetOrderIndices(), ReorderByRow(), ScSortInfoArray(), SetOrderIndices(), and Swap().

◆ mbKeepQuery

bool ScSortInfoArray::mbKeepQuery
private

Definition at line 266 of file table3.cxx.

Referenced by IsKeepQuery(), and SetKeepQuery().

◆ mbUpdateRefs

bool ScSortInfoArray::mbUpdateRefs
private

Definition at line 267 of file table3.cxx.

Referenced by IsUpdateRefs(), and SetUpdateRefs().

◆ mnLastIndex

SCCOLROW ScSortInfoArray::mnLastIndex
private

Definition at line 263 of file table3.cxx.

Referenced by GetLast().

◆ mpRows

std::unique_ptr<RowsType> ScSortInfoArray::mpRows
private

Definition at line 259 of file table3.cxx.

Referenced by GetDataRows(), InitDataRows(), ReorderByRow(), and Swap().

◆ mvppInfo

std::vector<std::unique_ptr<ScSortInfo[]> > ScSortInfoArray::mvppInfo
private

row-wise data table for sort by row operation.

Definition at line 261 of file table3.cxx.

Referenced by Get(), GetFirstArray(), GetUsedSorts(), ScSortInfoArray(), and Swap().

◆ nStart

SCCOLROW ScSortInfoArray::nStart
private

Definition at line 262 of file table3.cxx.

Referenced by Get(), GetStart(), ReorderByRow(), ScSortInfoArray(), and Swap().


The documentation for this class was generated from the following file: