#ifndef __UTILITY_H
#define __UTILITY_H

#ifndef __STDTYPES_H
#include "stdtypes.h"
#endif

class TString_array;
class TFilename;

char* format (const char* fmt, ...);
const char* cmd2name(const char* argv0, const char* argv1 = "");
int rtoi(const char * roman);
const char* itor(int i);
bool fcopy(const char* orig, const char* dest, bool append=FALSE);
bool fexist(const char* file);
long fsize(const char* file);

bool make_dir(const char* file);
int list_files(const char* mask, TString_array& result);

const char* encode(const char* data);
const char* decode(const char* data);

inline bool is_slash(char s)  // @parm Carattere da confrontare
{ return s == '\\' || s == '/'; }

inline bool is_not_slash(char s)  // @parm Carattere da confrontare
{ return s != '\\' && s != '/'; }

const char* esc(const char* str);   // Trasforma le sequenze "\n" nel carattere '\n'
const char* unesc(const char* str); // Trasforma i caratteri '\n' nella sequenza "\n"

#define ODD(x)   (x & 1)
#define EVEN(x) !(x & 1) 

#endif /* __UTILITY_H */