SHOGUN
v1.1.0
|
00001 /* 00002 * This program is free software; you can redistribute it and/or modify 00003 * it under the terms of the GNU General Public License as published by 00004 * the Free Software Foundation; either version 3 of the License, or 00005 * (at your option) any later version. 00006 * 00007 * Written (W) 2009 Soeren Sonnenburg 00008 * Copyright (C) 2009 Fraunhofer Institute FIRST and Max-Planck-Society 00009 */ 00010 00011 #ifndef __SG_INIT_H__ 00012 #define __SG_INIT_H__ 00013 00014 #include <stdio.h> 00015 00016 namespace shogun 00017 { 00018 class SGIO; 00019 class CMath; 00020 class Version; 00021 class Parallel; 00022 00036 void init_shogun(void (*print_message)(FILE* target, const char* str) = NULL, 00037 void (*print_warning)(FILE* target, const char* str) = NULL, 00038 void (*print_error)(FILE* target, const char* str) = NULL, 00039 void (*cancel_computations)(bool &delayed, bool &immediately)=NULL); 00040 00042 void init_shogun_with_defaults(); 00043 00046 void exit_shogun(); 00047 00052 void set_global_io(SGIO* io); 00053 00058 SGIO* get_global_io(); 00059 00064 void set_global_parallel(Parallel* parallel); 00065 00070 Parallel* get_global_parallel(); 00071 00076 void set_global_version(Version* version); 00077 00082 Version* get_global_version(); 00083 00088 void set_global_math(CMath* math); 00089 00094 CMath* get_global_math(); 00095 00097 extern void (*sg_print_message)(FILE* target, const char* str); 00098 00100 extern void (*sg_print_warning)(FILE* target, const char* str); 00101 00103 extern void (*sg_print_error)(FILE* target, const char* str); 00104 00106 extern void (*sg_cancel_computations)(bool &delayed, bool &immediately); 00107 } 00108 #endif //__SG_INIT__