#include <SerialNumber.h>
Public Member Functions | |
| SerialNumberWatcher (unsigned serial_r=(unsigned)-1) | |
Ctor taking an initial serial value. | |
| SerialNumberWatcher (const SerialNumber &serial_r) | |
Ctor taking an initial serial value. | |
| virtual | ~SerialNumberWatcher () |
| Dtor. | |
| bool | isDirty (unsigned serial_r) const |
Return whether serial_r differs. | |
| bool | isDirty (const SerialNumber &serial_r) const |
| bool | isClean (unsigned serial_r) const |
Return whether serial_r is still unchanged. | |
| bool | isClean (const SerialNumber &serial_r) const |
| bool | remember (unsigned serial_r) const |
Return isDirty, storing serial_r as new value. | |
| bool | remember (const SerialNumber &serial_r) const |
Private Attributes | |
| unsigned | _serial |
Friends | |
| std::ostream & | operator<< (std::ostream &str, const SerialNumberWatcher &obj) |
| Stream output. | |
SerialNumberWatcher remembers a serial number and tells whenever new numbers you feed change.
All methods are overloaded to take an or a const SerialNumber & as argument.
SerialNumber sno; void check() { static SerialNumberWatcher watcher( sno ); if ( watcher.remember( sno ) ) { cout << "Serial number changed." << endl; } } int main() { check(); // This call would trigger, if check used a // default constructed SerialNumberWatcher. check(); // sno.dirty(); check(); // "Serial number changed." check(); // sno.dirty(); check(); // "Serial number changed."
Definition at line 122 of file SerialNumber.h.
| zypp::SerialNumberWatcher::SerialNumberWatcher | ( | unsigned | serial_r = (unsigned)-1 |
) |
Ctor taking an initial serial value.
A default constructed SerialNumberWatcher remembers the serial number (unsigned)-1. So it is most likely the the 1st call to remember returns isDirty.
Vice versa, initializing the SerialNumberWatcher with the current SerialNumber, most likely prevents the 1st to remember to return isDirty.
Definition at line 68 of file SerialNumber.cc.
| zypp::SerialNumberWatcher::SerialNumberWatcher | ( | const SerialNumber & | serial_r | ) |
| zypp::SerialNumberWatcher::~SerialNumberWatcher | ( | ) | [virtual] |
| bool zypp::SerialNumberWatcher::isDirty | ( | unsigned | serial_r | ) | const [inline] |
Return whether serial_r differs.
Definition at line 145 of file SerialNumber.h.
References _serial.
Referenced by remember().
| bool zypp::SerialNumberWatcher::isDirty | ( | const SerialNumber & | serial_r | ) | const [inline] |
Definition at line 148 of file SerialNumber.h.
References _serial, and zypp::SerialNumber::serial().
| bool zypp::SerialNumberWatcher::isClean | ( | unsigned | serial_r | ) | const [inline] |
Return whether serial_r is still unchanged.
Definition at line 152 of file SerialNumber.h.
References _serial.
| bool zypp::SerialNumberWatcher::isClean | ( | const SerialNumber & | serial_r | ) | const [inline] |
Definition at line 155 of file SerialNumber.h.
References _serial, and zypp::SerialNumber::serial().
| bool zypp::SerialNumberWatcher::remember | ( | unsigned | serial_r | ) | const [inline] |
Return isDirty, storing serial_r as new value.
Definition at line 160 of file SerialNumber.h.
References _serial, and isDirty().
Referenced by zypp::capability::FilesystemCap::evaluate(), remember(), and zypp::pool::PoolImpl::serial().
| bool zypp::SerialNumberWatcher::remember | ( | const SerialNumber & | serial_r | ) | const [inline] |
Definition at line 170 of file SerialNumber.h.
References remember(), and zypp::SerialNumber::serial().
| std::ostream & operator<< | ( | std::ostream & | str, | |
| const SerialNumberWatcher & | obj | |||
| ) | [friend] |
unsigned zypp::SerialNumberWatcher::_serial [mutable, private] |
Definition at line 174 of file SerialNumber.h.
Referenced by isClean(), isDirty(), zypp::operator<<(), and remember().
1.5.3