Initial checkin. Build statstics class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@5670 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
429ed0178f
commit
251ce36f28
37
src/apps/bin/makeudfimage/Statistics.cpp
Normal file
37
src/apps/bin/makeudfimage/Statistics.cpp
Normal file
@ -0,0 +1,37 @@
|
||||
//----------------------------------------------------------------------
|
||||
// This software is part of the OpenBeOS distribution and is covered
|
||||
// by the OpenBeOS license.
|
||||
//
|
||||
// Copyright (c) 2003 Tyler Dauwalder, tyler@dauwalder.net
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
/*! \file Statistics.h
|
||||
|
||||
BDataIO wrapper around a given attribute for a file. (implementation)
|
||||
*/
|
||||
|
||||
#include "Statistics.h"
|
||||
|
||||
/*! \brief Creates a new statistics object and sets the start time
|
||||
for the duration timer.
|
||||
*/
|
||||
Statistics::Statistics()
|
||||
: fDirectories(0)
|
||||
, fFiles(0)
|
||||
, fSymlinks(0)
|
||||
, fAttributes(0)
|
||||
, fDirectoryBytes(0)
|
||||
, fFileBytes(0)
|
||||
, fStartTime(real_time_clock())
|
||||
{
|
||||
}
|
||||
|
||||
/*! \brief Resets all statistics fields, including the start time of
|
||||
the duration timer.
|
||||
*/
|
||||
void
|
||||
Statistics::Reset()
|
||||
{
|
||||
Statistics null;
|
||||
*this = null;
|
||||
}
|
52
src/apps/bin/makeudfimage/Statistics.h
Normal file
52
src/apps/bin/makeudfimage/Statistics.h
Normal file
@ -0,0 +1,52 @@
|
||||
//----------------------------------------------------------------------
|
||||
// This software is part of the OpenBeOS distribution and is covered
|
||||
// by the OpenBeOS license.
|
||||
//
|
||||
// Copyright (c) 2003 Tyler Dauwalder, tyler@dauwalder.net
|
||||
//----------------------------------------------------------------------
|
||||
|
||||
/*! \file Statistics.h
|
||||
|
||||
BDataIO wrapper around a given attribute for a file. (declarations)
|
||||
*/
|
||||
|
||||
#ifndef _STATISTICS_H
|
||||
#define _STATISTICS_H
|
||||
|
||||
#include <OS.h>
|
||||
#include <SupportDefs.h>
|
||||
|
||||
class Statistics {
|
||||
public:
|
||||
Statistics();
|
||||
void Reset();
|
||||
|
||||
time_t StartTime() const { return fStartTime; }
|
||||
time_t ElapsedTime() const { return real_time_clock() - fStartTime; }
|
||||
|
||||
void AddDirectory() { fDirectories++; }
|
||||
void AddFile() { fFiles++; }
|
||||
void AddSymlink() { fSymlinks++; }
|
||||
void AddAttribute() { fAttributes++; }
|
||||
|
||||
void AddDirectoryBytes(uint32 count) { fDirectoryBytes += count; }
|
||||
void AddFileBytes(uint32 count) { fFileBytes += count; }
|
||||
|
||||
uint64 Directories() const { return fDirectories; }
|
||||
uint64 Files() const { return fFiles; }
|
||||
uint64 Symlinks() const { return fSymlinks; }
|
||||
uint64 Attributes() const { return fAttributes; }
|
||||
|
||||
uint64 DirectoryBytes() const { return fDirectoryBytes; }
|
||||
uint64 FileBytes() const { return fFileBytes; }
|
||||
private:
|
||||
uint64 fDirectories;
|
||||
uint64 fFiles;
|
||||
uint64 fSymlinks;
|
||||
uint64 fAttributes;
|
||||
uint64 fDirectoryBytes;
|
||||
uint64 fFileBytes;
|
||||
time_t fStartTime;
|
||||
};
|
||||
|
||||
#endif // _STATISTICS_H
|
Loading…
x
Reference in New Issue
Block a user