Class: QgsRuntimeProfiler

class qgis.core.QgsRuntimeProfiler

Bases: PyQt5.QtCore.QAbstractItemModel

Provides a method of recording run time profiles of operations, allowing easy recording of their overall run time.

QgsRuntimeProfiler is not usually instantied manually, but rather accessed through QgsApplication.profiler().

This class is thread-safe only if accessed through QgsApplication.profiler(). If accessed in this way, operations can be profiled from non-main threads.

QgsRuntimeProfiler() Constructor to create a new runtime profiler.

Warning

QgsRuntimeProfiler is not usually instantied manually, but rather accessed through QgsApplication.profiler().

Methods

beginGroup

Begin the group for the profiler.

beginInsertColumns

beginInsertRows

beginMoveColumns

beginMoveRows

beginRemoveColumns

beginRemoveRows

beginResetModel

changePersistentIndex

changePersistentIndexList

childEvent

childGroups

Returns a list of all child groups with the specified parent.

clear

clear Clear all profile data.

columnCount

param parent:

connectNotify

createIndex

customEvent

data

param index:

decodeData

disconnectNotify

encodeData

end

End the current profile event.

endGroup

End the current active group.

endInsertColumns

endInsertRows

endMoveColumns

endMoveRows

endRemoveColumns

endRemoveRows

endResetModel

groupAdded

Emitted when a new group has started being profiled.

groupIsActive

Returns True if the specified group is currently being logged, i.e. it has a entry which has started and not yet stopped.

groups

Returns the set of known groups.

headerData

param section:

index

param row:

isSignalConnected

parent

param child:

persistentIndexList

profileTime

Returns the profile time for the specified name.

receivers

resetInternalData

rowCount

param parent:

sender

senderSignalIndex

start

Start a profile event with the given name.

timerEvent

totalTime

The current total time collected in the profiler.

translateGroupName

Returns the translated name of a standard profile group.

beginGroup(self, name: str)

Begin the group for the profiler. Groups will append {GroupName}/ to the front of the profile tag set using start.

Parameters:

name (str) – The name of the group.

Deprecated since version use: start() instead

QgsRuntimeProfiler.beginInsertColumns(self, QModelIndex, int, int)
QgsRuntimeProfiler.beginInsertRows(self, QModelIndex, int, int)
QgsRuntimeProfiler.beginMoveColumns(self, QModelIndex, int, int, QModelIndex, int) -> bool
QgsRuntimeProfiler.beginMoveRows(self, QModelIndex, int, int, QModelIndex, int) -> bool
QgsRuntimeProfiler.beginRemoveColumns(self, QModelIndex, int, int)
QgsRuntimeProfiler.beginRemoveRows(self, QModelIndex, int, int)
beginResetModel(self)
QgsRuntimeProfiler.changePersistentIndex(self, QModelIndex, QModelIndex)
changePersistentIndexList(self, Iterable[QModelIndex], Iterable[QModelIndex])
childEvent(self, QChildEvent)
childGroups(self, parent: str = '', group: str = '') List[str]

Returns a list of all child groups with the specified parent.

New in version 3.14.

Parameters:
  • parent (str = '') –

  • group (str = '') –

Return type:

List[str]

clear(self, group: str = '')

clear Clear all profile data.

Parameters:

group (str = '') –

columnCount(self, parent: QModelIndex = QModelIndex()) int
Parameters:

parent (QModelIndex = QModelIndex()) –

Return type:

int

connectNotify(self, QMetaMethod)
QgsRuntimeProfiler.createIndex(self, int, int, object: object = 0) -> QModelIndex
customEvent(self, QEvent)
data(self, index: QModelIndex, role: int = Qt.DisplayRole) Any
Parameters:
  • index (QModelIndex) –

  • role (int = Qt.DisplayRole) –

Return type:

Any

QgsRuntimeProfiler.decodeData(self, int, int, QModelIndex, QDataStream) -> bool
disconnectNotify(self, QMetaMethod)
encodeData(self, Iterable[QModelIndex], QDataStream)
end(self, group: str = '')

End the current profile event.

Parameters:

group (str = '') –

endGroup(self)

End the current active group.

Deprecated since version use: end() instead

endInsertColumns(self)
endInsertRows(self)
endMoveColumns(self)
endMoveRows(self)
endRemoveColumns(self)
endRemoveRows(self)
endResetModel(self)
groupAdded(self, group: str)

Emitted when a new group has started being profiled.

Parameters:

group (str) –

groupIsActive(self, group: str) bool

Returns True if the specified group is currently being logged, i.e. it has a entry which has started and not yet stopped.

New in version 3.14.

Parameters:

group (str) –

Return type:

bool

groups(self) Set[str]

Returns the set of known groups.

Return type:

Set[str]

headerData(self, section: int, orientation: Qt.Orientation, role: int = Qt.DisplayRole) Any
Parameters:
  • section (int) –

  • orientation (Qt.Orientation) –

  • role (int = Qt.DisplayRole) –

Return type:

Any

index(self, row: int, column: int, parent: QModelIndex = QModelIndex()) QModelIndex
Parameters:
  • row (int) –

  • column (int) –

  • parent (QModelIndex = QModelIndex()) –

Return type:

QModelIndex

isSignalConnected(self, QMetaMethod) bool
parent(self, child: QModelIndex) QModelIndex
Parameters:

child (QModelIndex) –

Return type:

QModelIndex

persistentIndexList(self) List[QModelIndex]
profile

alias of ScopedRuntimeProfileContextManager

profileTime(self, name: str, group: str = '') float

Returns the profile time for the specified name.

New in version 3.14.

Parameters:
  • name (str) –

  • group (str = '') –

Return type:

float

receivers(self, PYQT_SIGNAL) int
resetInternalData(self)
rowCount(self, parent: QModelIndex = QModelIndex()) int
Parameters:

parent (QModelIndex = QModelIndex()) –

Return type:

int

sender(self) QObject
senderSignalIndex(self) int
start(self, name: str, group: str = '')

Start a profile event with the given name. The name of the profile event. Will have the name of the active group appended after ending.

Parameters:
  • name (str) –

  • group (str = '') –

timerEvent(self, QTimerEvent)
totalTime(self, group: str = '') float

The current total time collected in the profiler.

Return type:

float

Returns:

The current total time collected in the profiler.

Parameters:

group (str = '') –

translateGroupName(group: str) str

Returns the translated name of a standard profile group.

Parameters:

group (str) –

Return type:

str