HIP: Heterogenous-computing Interface for Portability
env.h
1 #pragma once
2 
3 extern void HipReadEnv();
4 
5 
6 
7 #define READ_ENV_I(_build, _ENV_VAR, _ENV_VAR2, _description) \
8  ihipReadEnv_I(&_ENV_VAR, #_ENV_VAR, #_ENV_VAR2, _description);
9 
10 #define READ_ENV_S(_build, _ENV_VAR, _ENV_VAR2, _description) \
11  ihipReadEnv_S(&_ENV_VAR, #_ENV_VAR, #_ENV_VAR2, _description);
12 
13 #define READ_ENV_C(_build, _ENV_VAR, _ENV_VAR2, _description, _callback) \
14  ihipReadEnv_Callback(&_ENV_VAR, #_ENV_VAR, #_ENV_VAR2, _description, _callback);
15 
16 
17 extern void ihipReadEnv_I(int *var_ptr, const char *var_name1, const char *var_name2, const char *description);
18 extern void ihipReadEnv_S(std::string *var_ptr, const char *var_name1, const char *var_name2, const char *description);
19 extern void ihipReadEnv_Callback(void *var_ptr, const char *var_name1, const char *var_name2, const char *description, std::string (*setterCallback)(void * var_ptr, const char * env));
20 
21 
22 // String functions:
23 extern void trim(std::string *s);
24 extern void tokenize(const std::string &s, char delim, std::vector<std::string> *tokens);