|
ATLAS Offline Software
|
Go to the documentation of this file.
19 #include <QElapsedTimer>
79 : system(
s), m_priority(117117.117),
80 m_accumulator(cw->isAccumulator()),m_vs(vs),m_d(
d)
89 if (
it.key()->name() ==
s->name() ) {
127 m_timemeasurements.enqueue(
t);
128 if (m_timemeasurements.count()==8)
129 m_timemeasurements.dequeue();
131 QList<double>
tmplist = m_timemeasurements;
135 case 1: m_timing =
tmplist.at(0);
break;
137 case 3: m_timing =
tmplist.at(1);
break;
142 default: assert(0&&
"Should never happen");
break;
153 if (m_priority!=117117.117)
163 m_priority = m_timing + (m_vs==VISIBLE?-30000.0:(m_vs==SOONVISIBLE?-
m_d->
soonvisbonus:0.0)) + (m_accumulator?-100.0:0.0);
167 std::pair<double,IVP1System*>
a(m_priority,system);
175 std::pair<Pri2SysMap::iterator, Pri2SysMap::iterator>
itp(
m_d->
priority2sys.equal_range(m_priority));
178 if (
it->second==system) {
183 assert(
it !=
itp.second);
219 QList<IVP1System*>
tmp;
236 tmp +=
it.value()->refreshtime();
290 const QSet<IVP1ChannelWidget*>&newsoonvis,
291 const double& soonvisbonus)
309 assert(!(visible&&soonvisible));
JetConstituentVector::iterator iterator
IVP1System * nextErasedActiveSystemByPriority()
QList< IVP1System * > getSystemsToEraseByPriority()
void setupSysItr(IVP1ChannelWidget *cw)
std::multimap< double, IVP1System * > Pri2SysMap
VP1Prioritiser(QObject *parent)
std::set< IVP1System * >::const_iterator itsys
QElapsedTimer * stopwatch
virtual ~VP1Prioritiser()
QQueue< double > m_timemeasurements
QSet< IVP1ChannelWidget * > visiblechannels
double refreshtime() const
QSet< IVP1ChannelWidget * > soonvisiblechannels
void channelCreated(IVP1ChannelWidget *)
double endTiming_Refresh()
std::set< IVP1System * >::const_iterator itsysE
void channelUncreated(IVP1ChannelWidget *)
VP1Prioritiser * prioritiser
double beginTiming_Refresh(IVP1System *)
void visibleChannelsChanged(const QSet< IVP1ChannelWidget * > &vis, const QSet< IVP1ChannelWidget * > &soonvis, const double &soonvisbonus)
SystemInfo(IVP1System *, Imp *, IVP1ChannelWidget *, const VisibilityState &)
void setVisibilityState(const VisibilityState &)
QHash< IVP1System *, SystemInfo * > sys2info
double elapsedTiming_Refresh()
double estimateRemainingCalcTime() const
IVP1System * currenttimedsystem
void addTimeMeasurement(const double &)
void updateSysinfoWithVisibilityState(const QSet< IVP1ChannelWidget * > &channels, const SystemInfo::VisibilityState &vs)