Changes in src/helpers.cpp [f66195:be90f1]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/helpers.cpp
-
Property mode
changed from
100644
to100755
rf66195 rbe90f1 6 6 7 7 #include "helpers.hpp" 8 #include "memoryusageobserver.hpp" 8 9 9 10 /********************************************** helpful functions *********************************/ … … 117 118 }; 118 119 119 /** Blows the 6-dimensional \a cell_size array up to a full NDIM by NDIM matrix. 120 * \param *symm 6-dim array of unique symmetric matrix components 121 * \return allocated NDIM*NDIM array with the symmetric matrix 122 */ 123 double * ReturnFullMatrixforSymmetric(double *symm) 124 { 125 double *matrix = Malloc<double>(NDIM * NDIM, "molecule::ReturnFullMatrixforSymmetric: *matrix"); 126 matrix[0] = symm[0]; 127 matrix[1] = symm[1]; 128 matrix[2] = symm[3]; 129 matrix[3] = symm[1]; 130 matrix[4] = symm[2]; 131 matrix[5] = symm[4]; 132 matrix[6] = symm[3]; 133 matrix[7] = symm[4]; 134 matrix[8] = symm[5]; 135 return matrix; 136 }; 137 138 /** Comparison function for GSL heapsort on distances in two molecules. 139 * \param *a 140 * \param *b 141 * \return <0, \a *a less than \a *b, ==0 if equal, >0 \a *a greater than \a *b 142 */ 143 int CompareDoubles (const void * a, const void * b) 144 { 145 if (*(double *)a > *(double *)b) 146 return -1; 147 else if (*(double *)a < *(double *)b) 148 return 1; 149 else 150 return 0; 151 }; 152 153 154 /** Allocates a memory range using malloc(). 120 /** 121 * Allocates a memory range using malloc(). 155 122 * Prints the provided error message in case of a failure. 156 123 * … … 177 144 }; 178 145 146 /** 147 * Frees all memory registered by the memory observer and calls exit(225) afterwards. 148 */ 149 void performCriticalExit() { 150 map<void*, size_t> pointers = MemoryUsageObserver::getInstance()->getPointersToAllocatedMemory(); 151 for (map<void*, size_t>::iterator runner = pointers.begin(); runner != pointers.end(); runner++) { 152 Free(((void**) &runner->first)); 153 } 154 155 exit(255); 156 } -
Property mode
changed from
Note:
See TracChangeset
for help on using the changeset viewer.