summaryrefslogtreecommitdiff
path: root/apt-pkg/depcache.h
diff options
context:
space:
mode:
authorDavid Kalnischkies <kalnischkies@gmail.com>2010-06-03 10:45:58 +0200
committerDavid Kalnischkies <kalnischkies@gmail.com>2010-06-03 10:45:58 +0200
commita3c4c81afe25377020470ff71c1362136437397c (patch)
tree160f5828b1e5ea93062a656f7162716c596f3298 /apt-pkg/depcache.h
parent81305a0b30cc12aa6d32081bbdcf930907ecfbbe (diff)
downloadapt-a3c4c81afe25377020470ff71c1362136437397c.tar.gz
* apt-pkg/depcache.cc:
- switch i{Download,Usr}Size from double to (un)signed long long The biggest reason is that this saves a lot of float point operations we do in AddSizes() on integers. The only reason i see that this was a double is that it was 64bit long and can therefore store bigger values than int/long, but with the availablity of (un)signed long long we are now also at 64bit and can store sizes more than 8 Exabytes big - by the time this will be a limit the C/C++ Standard will have bigger types, hopefully.
Diffstat (limited to 'apt-pkg/depcache.h')
-rw-r--r--apt-pkg/depcache.h12
1 files changed, 7 insertions, 5 deletions
diff --git a/apt-pkg/depcache.h b/apt-pkg/depcache.h
index d4258438f..c6f245a80 100644
--- a/apt-pkg/depcache.h
+++ b/apt-pkg/depcache.h
@@ -286,9 +286,11 @@ class pkgDepCache : protected pkgCache::Namespace
pkgCache *Cache;
StateCache *PkgState;
unsigned char *DepState;
-
- double iUsrSize;
- double iDownloadSize;
+
+ /** Stores the space changes after installation */
+ signed long long iUsrSize;
+ /** Stores how much we need to download to get the packages */
+ unsigned long long iDownloadSize;
unsigned long iInstCount;
unsigned long iDelCount;
unsigned long iKeepCount;
@@ -452,8 +454,8 @@ class pkgDepCache : protected pkgCache::Namespace
bool writeStateFile(OpProgress *prog, bool InstalledOnly=true);
// Size queries
- inline double UsrSize() {return iUsrSize;};
- inline double DebSize() {return iDownloadSize;};
+ inline signed long long UsrSize() {return iUsrSize;};
+ inline unsigned long long DebSize() {return iDownloadSize;};
inline unsigned long DelCount() {return iDelCount;};
inline unsigned long KeepCount() {return iKeepCount;};
inline unsigned long InstCount() {return iInstCount;};