Ignore:
Timestamp:
Oct 5, 2009, 2:59:11 PM (16 years ago)
Author:
Frederik Heber <heber@…>
Children:
5dda23, 729279, 8afe31
Parents:
7794d8 (diff), 39d983 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge branch 'ConcaveHull' of ssh://stud64d-02/home/metzler/workspace/espack into ConcaveHull

Conflicts:

molecuilder/src/builder.cpp
molecuilder/src/memoryusageobserver.cpp
molecuilder/src/memoryusageobserver.hpp
molecuilder/src/memoryusageobserverunittest.cpp
molecuilder/src/memoryusageobserverunittest.hpp

This conflict arised, because the #19 commit was already pushed to the server, but the commit was later "amended" locally. This is fixed, there were no real overlaps anyway.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • molecuilder/src/memoryusageobserver.cpp

    r7794d8 rbf497f  
    1515MemoryUsageObserver::MemoryUsageObserver() {
    1616  instance = NULL;
     17  maximumSize = 0;
     18  totalSize = 0;
    1719}
    1820
     
    2426    memoryUsers.erase(current);
    2527  }
     28
     29  maximumSize = 0;
     30  totalSize = 0;
    2631}
    2732
     
    5762 */
    5863void MemoryUsageObserver::addMemory(void* pointer, size_t size) {
     64  // Memory might become reseized so we need to check whether the provided pointer is already tracked.
     65  map<void*, size_t>::iterator current = memoryUsers.find(pointer);
     66  if (current != memoryUsers.end()) {
     67    totalSize -= current->second;
     68  }
     69
    5970  memoryUsers[pointer] = size;
     71  totalSize += size;
     72  maximumSize = (totalSize > maximumSize) ? totalSize : maximumSize;
    6073}
    6174
     
    7487  }
    7588
     89  totalSize -= current->second;
    7690  memoryUsers.erase(current);
    7791}
     
    8195 */
    8296size_t MemoryUsageObserver::getUsedMemorySize() {
    83   size_t totalSize = 0;
    84 
    85   for (map<void*, size_t>::iterator current = memoryUsers.begin(); current != memoryUsers.end(); current++) {
    86     totalSize += current->second;
    87   }
    88 
    8997  return totalSize;
    9098}
     99
     100/**
     101 * Gets the maximum size of allocated memory until now.
     102 */
     103size_t MemoryUsageObserver::getMaximumUsedMemory() {
     104  return maximumSize;
     105}
Note: See TracChangeset for help on using the changeset viewer.