AutomationFragmentation_failures
        Candidate_v1.6.1
        Candidate_v1.7.0
        ChemicalSpaceEvaluator
        Enhanced_StructuralOptimization_continued
        Exclude_Hydrogens_annealWithBondGraph
        ForceAnnealing_with_BondGraph
        ForceAnnealing_with_BondGraph_contraction-expansion
        Gui_displays_atomic_force_velocity
        JobMarket_RobustOnKillsSegFaults
        PythonUI_with_named_parameters
        StoppableMakroAction
        TremoloParser_IncreasedPrecision
        stable
      
      
        
          | Last change
 on this file since a5c293 was             9eb71b3, checked in by Frederik Heber <frederik.heber@…>, 8 years ago | 
        
          | 
Commented out MemDebug include and Memory::ignore.
 MemDebug clashes with various allocation operators that use a specific
placement in memory. It is so far not possible to wrap new/delete fully.
Hence, we stop this effort which so far has forced us to put ever more
includes (with clashes) into MemDebug and thereby bloat compilation time.
MemDebug does not add that much usefulness which is not also provided by
valgrind.
 | 
        
          | 
              
Property                 mode
 set to                 100644 | 
        
          | File size:
            1.4 KB | 
      
      
| Line |  | 
|---|
| 1 | /* | 
|---|
| 2 | * Project: MoleCuilder | 
|---|
| 3 | * Description: creates and alters molecular systems | 
|---|
| 4 | * Copyright (C)  2010 University of Bonn. All rights reserved. | 
|---|
| 5 | * Please see the LICENSE file or "Copyright notice" in builder.cpp for details. | 
|---|
| 6 | */ | 
|---|
| 7 |  | 
|---|
| 8 | /* | 
|---|
| 9 | * Info.cpp | 
|---|
| 10 | * | 
|---|
| 11 | *  Created on: Nov 25, 2009 | 
|---|
| 12 | *      Author: heber | 
|---|
| 13 | */ | 
|---|
| 14 |  | 
|---|
| 15 | // include config.h | 
|---|
| 16 | #ifdef HAVE_CONFIG_H | 
|---|
| 17 | #include <config.h> | 
|---|
| 18 | #endif | 
|---|
| 19 |  | 
|---|
| 20 | //#include "CodePatterns/MemDebug.hpp" | 
|---|
| 21 |  | 
|---|
| 22 | #include "CodePatterns/Chronos.hpp" | 
|---|
| 23 | #include "CodePatterns/Info.hpp" | 
|---|
| 24 | #include "CodePatterns/Log.hpp" | 
|---|
| 25 |  | 
|---|
| 26 | int Info::verbosity = 0; | 
|---|
| 27 | Chronos * Info::timekeeper = NULL; | 
|---|
| 28 | bool Info::ChronosBlocker = false; | 
|---|
| 29 | size_t Info::NumberInfos = 0; | 
|---|
| 30 |  | 
|---|
| 31 | /** | 
|---|
| 32 | * Constructor. | 
|---|
| 33 | * | 
|---|
| 34 | * \return Info instance | 
|---|
| 35 | */ | 
|---|
| 36 | Info::Info(const char *msg) : | 
|---|
| 37 | FunctionName(msg) | 
|---|
| 38 | { | 
|---|
| 39 | verbosity++; | 
|---|
| 40 | LOG(0, "INFO: Begin of "+FunctionName); | 
|---|
| 41 |  | 
|---|
| 42 | // one more info object | 
|---|
| 43 | ++NumberInfos; | 
|---|
| 44 |  | 
|---|
| 45 | // have pointer ready | 
|---|
| 46 | if (timekeeper == NULL) { | 
|---|
| 47 | timekeeper = Chronos::getPointer(); | 
|---|
| 48 | } | 
|---|
| 49 |  | 
|---|
| 50 | // start time keeping | 
|---|
| 51 | timekeeper->startTiming(FunctionName); | 
|---|
| 52 | } | 
|---|
| 53 |  | 
|---|
| 54 | /** | 
|---|
| 55 | * Destructor. | 
|---|
| 56 | */ | 
|---|
| 57 | Info::~Info() | 
|---|
| 58 | { | 
|---|
| 59 | // end time keeping | 
|---|
| 60 | timekeeper->endTiming(FunctionName); | 
|---|
| 61 |  | 
|---|
| 62 | // verbosity stuff | 
|---|
| 63 | LOG(0, "INFO: End of "+FunctionName); | 
|---|
| 64 | verbosity--; | 
|---|
| 65 |  | 
|---|
| 66 | // one info object less | 
|---|
| 67 | --NumberInfos; | 
|---|
| 68 |  | 
|---|
| 69 | // we are last one? | 
|---|
| 70 | if (!NumberInfos) { | 
|---|
| 71 | timekeeper = NULL; | 
|---|
| 72 | } | 
|---|
| 73 | } | 
|---|
| 74 |  | 
|---|
| 75 | /** | 
|---|
| 76 | * Sets the verbosity. | 
|---|
| 77 | * | 
|---|
| 78 | * \param verbosityLevel verbosity | 
|---|
| 79 | */ | 
|---|
| 80 | void Info::setVerbosity(int verbosityLevel) | 
|---|
| 81 | { | 
|---|
| 82 | verbosity = verbosityLevel; | 
|---|
| 83 | } | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.