13 #include <zypp/base/Logger.h> 14 #include <zypp-core/base/InputStream> 15 #include <zypp/base/String.h> 17 #include <zypp-core/ui/ProgressData> 21 #undef ZYPP_BASE_LOGGER_LOGGROUP 22 #define ZYPP_BASE_LOGGER_LOGGROUP "Progress" 42 if ( newVal -
_d->_last_val > 10
43 || now -
_d->_last_send > 1
44 || (
_d->_last_val == 0 && newVal > 0 )
45 || ( newVal == 100 &&
_d->_last_val != 100 )
46 || ( newVal != 100 &&
_d->_last_val == 100 )
47 ||
_d->_state !=
RUN )
49 _d->_last_val = newVal;
57 if ( now -
_d->_last_send > 1 ||
_d->_state !=
RUN )
59 _d->_last_val =
_d->_val;
76 if ( !
_d->_receiver( *
this ) )
78 if (
_d->_state !=
END )
80 WAR <<
"User request to ABORT pending action. " 82 _d->_last_val, (
hasRange() ?
"%" :
"!" ) ) << endl;
87 else if (
_d->_state ==
END )
104 return str <<
str::form(
"{%u|%s}[%lld,%lld](%lld)%lld%%)",
122 if ( input_r.
size() > 0 )
146 float real_increment = parent_factor*increment;
ProgressData makeProgressData(const InputStream &input_r)
String related utilities and Regular expression matching.
unsigned numericId() const
std::ostream & operator<<(std::ostream &str, const SerialNumber &obj)
void min(value_type min_r)
Set new min value.
std::string form(const char *format,...) __attribute__((format(printf
Printf style construction of std::string.
void max(value_type max_r)
Set new max value.
bool report()
Send report if necessary.
void range(value_type max_r)
Set new [0,max].
Store and operate on date (time_t).
bool operator()(const ProgressData &progress)
Implements the ProgressData::ReceiverFnc callback interface.
Maintain [min,max] and counter (value) for progress counting.
CombinedProgressData(ProgressData &pd, ProgressData::value_type weight=0)
Ctor.
bool incr(value_type val_r=1)
Increment counter value (default by 1).
const std::string & name() const
ProgressData::value_type _weight
static Date now()
Return the current time.
value_type reportValue() const
bool tick()
Leave counter value unchanged (still alive).
void name(const std::string &name_r)
Set counter name.
Easy-to use interface to the ZYPP dependency resolver.
ProgressData::value_type _last_value
RWCOW_pointer< Data > _d
Pointer to data.