#include <Soprano/Util/SignalCacheModel>
Public Slots | |
void | setCacheTime (int msec) |
Public Member Functions | |
SignalCacheModel (Model *parent=0) | |
virtual | ~SignalCacheModel () |
int | cacheTime () const |
Protected Member Functions | |
virtual void | parentStatementsAdded () |
virtual void | parentStatementsRemoved () |
void | timerEvent (QTimerEvent *event) |
When adding or removing many statements with separate calls to Model::addStatement or Model::removeStatement Model emits signals Model::statementsAdded and Model::statementsRemoved over and over for each call. This can slow down an application that monitors the state of the model.
The SignalCacheModel caches multiple emitted signals into one, trying to ensure that only one signal is delivered in a certain time. The downside of this is that signals are not delivered immiadetely but through the event loop. This, however, should seldomly be a problem.
Definition at line 52 of file signalcachemodel.h.
Soprano::Util::SignalCacheModel::SignalCacheModel | ( | Model * | parent = 0 |
) |
virtual Soprano::Util::SignalCacheModel::~SignalCacheModel | ( | ) | [virtual] |
Destructor.
int Soprano::Util::SignalCacheModel::cacheTime | ( | ) | const |
The cache time.
void Soprano::Util::SignalCacheModel::setCacheTime | ( | int | msec | ) | [slot] |
Signals are only delivered once every msec
milliseconds.
Default value is 50
virtual void Soprano::Util::SignalCacheModel::parentStatementsAdded | ( | ) | [protected, virtual] |
Reimplemented to do the actual signal caching.
Reimplemented from Soprano::FilterModel.
virtual void Soprano::Util::SignalCacheModel::parentStatementsRemoved | ( | ) | [protected, virtual] |
Reimplemented to do the actual signal caching.
Reimplemented from Soprano::FilterModel.
void Soprano::Util::SignalCacheModel::timerEvent | ( | QTimerEvent * | event | ) | [protected] |
Reimplemented from QObject.