pgRouting  2.2
pgRouting extends the PostGIS / PostgreSQL geospatial database to provide geospatial routing functionality.
 All Classes Functions Variables Pages
memory_func.hpp
1 /*PGR-GNU*****************************************************************
2 File: memory_func.hpp
3 
4 Copyright (c) 2015 Celia Virginia Vergara Castillo
5 Mail: vicky_vergara@hotmail.com
6 
7 ------
8 
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
13 
14 This program is distributed in the hope that it will be useful,
15 but WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17 GNU General Public License for more details.
18 
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
22 
23 ********************************************************************PGR-GNU*/
24 #include <stdlib.h>
25 
26 
27 template <typename T>
28 T*
29 get_memory(std::size_t size, T *ptr){
30  if( !ptr ){
31  ptr = (T*) malloc(size * sizeof(T));
32  } else {
33  ptr = (T*) realloc(ptr, size * sizeof(T));
34  }
35  return (T*) ptr;
36 }
37 
38 
39 template <typename T>
40 T*
41 noResult(std::size_t *count, T *ptr) {
42  (*count) = 0;
43  if (ptr)
44  free(ptr);
45  return NULL;
46 }
47