libzypp
11.13.5
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
WatchFile.h
Go to the documentation of this file.
1
/*---------------------------------------------------------------------\
2
| ____ _ __ __ ___ |
3
| |__ / \ / / . \ . \ |
4
| / / \ V /| _/ _/ |
5
| / /__ | | | | | | |
6
| /_____||_| |_| |_| |
7
| |
8
\---------------------------------------------------------------------*/
12
#ifndef ZYPP_BASE_WATCHFILE_H
13
#define ZYPP_BASE_WATCHFILE_H
14
15
#include <iosfwd>
16
17
#include "
zypp/PathInfo.h
"
18
20
namespace
zypp
21
{
22
24
//
25
// CLASS NAME : WatchFile
26
//
49
class
WatchFile
50
{
51
public
:
52
enum
Initial
{
NO_INIT
,
INIT
};
53
54
public
:
56
WatchFile
(
const
Pathname & path_r = Pathname(),
57
Initial
mode =
INIT
)
58
:
_path
( path_r )
59
{
60
PathInfo pi( mode ==
INIT
? path_r : Pathname() );
61
_size
= pi.size();
62
_mtime
= pi.mtime();
63
}
64
65
const
Pathname &
path
()
const
66
{
return
_path
; }
67
68
bool
hasChanged
()
69
{
70
PathInfo pi(
_path
);
71
if
(
_size
!= pi.size() ||
_mtime
!= pi.mtime() )
72
{
73
_size
= pi.size();
74
_mtime
= pi.mtime();
75
return
true
;
76
}
77
return
false
;
78
}
79
80
private
:
81
Pathname
_path
;
82
off_t
_size
;
83
time_t
_mtime
;
84
};
86
88
}
// namespace zypp
90
#endif // ZYPP_BASE_WATCHFILE_H
zypp
base
WatchFile.h
Generated by
1.8.1