9 #ifndef _HELPER_METHODS_H
10 #define _HELPER_METHODS_H
22 std::string convertToStr(T val)
24 std::ostringstream ss;
32 static const std::string
trimSpaces(
const std::string& pString,
const std::string& pWhitespace =
" \t")
34 const size_t beginStr = pString.find_first_not_of(pWhitespace);
35 if (beginStr == std::string::npos)
41 const size_t endStr = pString.find_last_not_of(pWhitespace);
42 const size_t range = endStr - beginStr + 1;
44 return pString.substr(beginStr, range);
54 return (T)( rand() % (int)(max-min+1) +
min);
64 std::string content =
"";
65 std::ifstream ifs(filename.c_str());
68 content.assign( (std::istreambuf_iterator<char>(ifs)), (std::istreambuf_iterator<char>()) );
78 std::transform(str.begin(), str.end(),str.begin(), ::tolower);
86 std::transform(str.begin(), str.end(),str.begin(), ::toupper);
93 static bool startsWith(
const std::string& main,
const std::string& prefix)
95 return (main.substr(0, prefix.size()) == prefix);
106 #if defined(SKEPU_CUDA) && defined(USE_PINNED_MEMORY)
107 cudaError_t status = cudaMallocHost((
void**)&data, numElems*
sizeof(T));
108 if (status != cudaSuccess)
110 SKEPU_ERROR(
"Error allocating pinned host memory\n");
113 data =
new T[numElems];
115 SKEPU_ERROR(
"Memory allocation failed\n");
128 #if defined(SKEPU_CUDA) && defined(USE_PINNED_MEMORY)
129 cudaError_t status = cudaFreeHost(data);
130 if (status != cudaSuccess)
132 SKEPU_ERROR(
"Error de-allocating pinned host memory.\n");
static void toLowerCase(std::string &str)
Definition: helper_methods.h:76
void allocateHostMemory(T *&data, const size_t numElems)
Definition: helper_methods.h:104
static std::string read_file_into_string(const std::string &filename)
Definition: helper_methods.h:62
static const std::string trimSpaces(const std::string &pString, const std::string &pWhitespace=" \t")
Definition: helper_methods.h:32
T min(T a, T b)
Definition: mapoverlap_convol_kernels.h:212
static void toUpperCase(std::string &str)
Definition: helper_methods.h:84
void deallocateHostMemory(T *data)
Definition: helper_methods.h:123
T max(T a, T b)
Definition: mapoverlap_convol_kernels.h:203
static bool startsWith(const std::string &main, const std::string &prefix)
Definition: helper_methods.h:93
T get_random_number(T min, T max)
Definition: helper_methods.h:52