libzypp
12.16.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
libzypp
Welcome to libzypp
Code Pitfalls - Frequently made mistakes
Code Snippets
Environment Variables
Testing for provided features.
Notes on revisions
Extending ZYpp: Plugins and Hooks
Services
Solver - Vendor protection
Writing and tunning testcases
Libzypp and threads
User data as transaction id
Todo List
Deprecated List
Modules
Namespaces
Classes
Files
File List
zypp
base
Algorithm.h
Backtrace.cc
Backtrace.h
Collector.h
Counter.h
Debug.h
DefaultIntegral.h
DtorReset.h
Easy.h
Errno.h
Exception.cc
Exception.h
ExternalDataSource.cc
ExternalDataSource.h
Fd.cc
Fd.h
Flags.h
Function.h
Functional.h
Gettext.cc
Gettext.h
GzStream.cc
GzStream.h
InputStream.cc
InputStream.h
InterProcessMutex.cc
InterProcessMutex.h
IOStream.cc
IOStream.h
Iterator.h
LogControl.cc
LogControl.h
Logger.h
LogTools.h
Measure.cc
Measure.h
NamedValue.h
NonCopyable.h
ProfilingFormater.cc
ProfilingFormater.h
ProvideNumericId.h
PtrTypes.h
Random.cc
Random.h
ReferenceCounted.cc
ReferenceCounted.h
Regex.cc
Regex.h
SafeBool.h
SerialNumber.cc
SerialNumber.h
Signal.h
String.cc
String.h
StrMatcher.cc
StrMatcher.h
Sysconfig.cc
Sysconfig.h
Tr1hash.h
Unit.cc
Unit.h
UserRequestException.cc
UserRequestException.h
WatchFile.h
media
misc
parser
pool
repo
sat
solver
target
thread
ui
url
ws
zypp_detail
APIConfig.h
Arch.cc
Arch.h
AutoDispose.h
Bit.h
ByteCount.cc
ByteCount.h
Callback.h
Capabilities.cc
Capabilities.h
Capability.cc
Capability.h
CapMatch.cc
CapMatch.h
Changelog.cc
Changelog.h
CheckSum.cc
CheckSum.h
CountryCode.cc
CountryCode.h
Date.cc
Date.h
Dep.cc
Dep.h
Digest.cc
Digest.h
DiskUsage.cc
DiskUsage.h
DiskUsageCounter.cc
DiskUsageCounter.h
DownloadMode.cc
DownloadMode.h
Edition.cc
Edition.h
ExternalProgram.cc
ExternalProgram.h
Fetcher.cc
Fetcher.h
FileChecker.cc
FileChecker.h
Filter.h
Glob.cc
Glob.h
HistoryLog.cc
HistoryLog.h
HistoryLogData.cc
HistoryLogData.h
IdString.cc
IdString.h
IdStringType.h
InstanceId.cc
InstanceId.h
KeyContext.h
KeyRing.cc
KeyRing.h
KVMap.h
LanguageCode.cc
LanguageCode.h
Locale.cc
Locale.h
Locks.cc
Locks.h
ManagedFile.h
MediaProducts.cc
MediaProducts.h
MediaSetAccess.cc
MediaSetAccess.h
Misc.h
OnMediaLocation.cc
OnMediaLocation.h
Package.cc
Package.h
PackageKeyword.h
Patch.cc
Patch.h
PathInfo.cc
PathInfo.h
Pathname.cc
Pathname.h
Pattern.cc
Pattern.h
PluginFrame.cc
PluginFrame.h
PluginFrameException.cc
PluginFrameException.h
PluginScript.cc
PluginScript.h
PluginScriptException.cc
PluginScriptException.h
PoolItem.cc
PoolItem.h
PoolItemBest.cc
PoolItemBest.h
PoolQuery.cc
PoolQuery.h
PoolQueryResult.cc
PoolQueryResult.h
PoolQueryUtil.tcc
ProblemSolution.cc
ProblemSolution.h
ProblemTypes.h
Product.cc
Product.h
ProgressData.cc
ProgressData.h
ProvideFilePolicy.cc
ProvideFilePolicy.h
PublicKey.cc
PublicKey.h
Range.cc
Range.h
Rel.cc
Rel.h
RelCompare.h
RepoInfo.cc
RepoInfo.h
RepoManager.cc
RepoManager.h
Repository.cc
Repository.h
RepoStatus.cc
RepoStatus.h
ResFilters.h
ResKind.cc
ResKind.h
ResObject.cc
ResObject.h
ResObjects.h
Resolvable.cc
Resolvable.h
Resolver.cc
Resolver.h
ResolverProblem.cc
ResolverProblem.h
ResPool.cc
ResPool.h
ResPoolProxy.cc
ResPoolProxy.h
ResStatus.cc
ResStatus.h
ResTraits.h
ServiceInfo.cc
ServiceInfo.h
Signature.cc
Signature.h
SrcPackage.cc
SrcPackage.h
SysContent.cc
SysContent.h
Target.cc
Target.h
TmpPath.cc
TmpPath.h
TriBool.h
Url.cc
Url.h
Vendor.h
VendorAttr.cc
VendorAttr.h
VendorSupportOptions.cc
VendorSupportOptions.h
ZConfig.cc
ZConfig.h
ZYpp.cc
ZYpp.h
ZYppCallbacks.h
ZYppCommit.h
ZYppCommitPolicy.cc
ZYppCommitPolicy.h
ZYppCommitResult.cc
ZYppCommitResult.h
ZYppFactory.cc
ZYppFactory.h
File Members
SerialNumber.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_BASE_SERIALNUMBER_H
13
#define ZYPP_BASE_SERIALNUMBER_H
14
15
#include <iosfwd>
16
17
#include "
zypp/base/PtrTypes.h
"
18
20
namespace
zypp
21
{
22
24
//
25
// CLASS NAME : SerialNumber
26
//
44
class
SerialNumber
45
{
46
friend
std::ostream &
operator<<
( std::ostream & str,
const
SerialNumber
& obj );
47
48
public
:
50
SerialNumber
(
bool
dirty_r =
false
);
52
virtual
~SerialNumber
();
53
54
public
:
55
void
setDirty
()
56
{
_dirty
=
true
; }
57
58
public
:
59
bool
dirty
()
const
60
{
return
_dirty
; }
61
62
bool
clean
()
const
63
{
return
!
_dirty
; }
64
65
unsigned
serial
()
const
66
{
67
if
(
_dirty
)
68
{
69
++
_serial
;
70
_dirty
=
false
;
71
}
72
return
_serial
;
73
}
74
75
private
:
76
mutable
bool
_dirty
;
77
mutable
unsigned
_serial
;
78
};
80
82
std::ostream &
operator<<
( std::ostream & str,
const
SerialNumber
& obj );
83
85
//
86
// CLASS NAME : SerialNumberWatcher
87
//
122
class
SerialNumberWatcher
123
{
124
friend
std::ostream &
operator<<
( std::ostream & str,
const
SerialNumberWatcher
& obj );
125
126
public
:
137
SerialNumberWatcher
(
unsigned
serial_r = (
unsigned
)-1 );
139
SerialNumberWatcher
(
const
SerialNumber
& serial_r );
141
virtual
~SerialNumberWatcher
();
142
143
public
:
145
bool
isDirty
(
unsigned
serial_r )
const
146
{
return
(
_serial
!= serial_r ); }
148
bool
isDirty
(
const
SerialNumber
& serial_r )
const
149
{
return
(
_serial
!= serial_r.
serial
() ); }
150
152
bool
isClean
(
unsigned
serial_r )
const
153
{
return
(
_serial
== serial_r ); }
155
bool
isClean
(
const
SerialNumber
& serial_r )
const
156
{
return
(
_serial
== serial_r.
serial
() ); }
157
158
public
:
160
bool
remember
(
unsigned
serial_r )
const
161
{
162
if
(
isDirty
( serial_r ) )
163
{
164
_serial
= serial_r;
165
return
true
;
166
}
167
return
false
;
168
}
170
bool
remember
(
const
SerialNumber
& serial_r )
const
171
{
return
remember
( serial_r.
serial
() ); }
172
173
private
:
174
mutable
unsigned
_serial
;
175
};
177
179
std::ostream &
operator<<
( std::ostream & str,
const
SerialNumberWatcher
& obj );
180
182
}
// namespace zypp
184
#endif // ZYPP_BASE_SERIALNUMBER_H
zypp
base
SerialNumber.h
Generated by
1.8.2