00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __STOCKS_H__
00022 #define __STOCKS_H__
00023
00024
00025 #ifndef __LISTS_C__
00026 #define _LISTS_C_EXT extern
00027 #else
00028 #define _LISTS_C_EXT
00029 #endif
00030
00031 #ifndef __STOCKS_C__
00032 #define _STOCKS_C_EXT extern
00033 #else
00034 #define _STOCKS_C_EXT
00035 #endif
00036
00037 #ifndef __HTTP_C__
00038 #define _HTTP_C_EXT extern
00039 #else
00040 #define _HTTP_C_EXT
00041 #endif
00042
00043 #ifndef __CURRENCY_C__
00044 #define _CURRENCY_C_EXT extern
00045 #else
00046 #define _CURRENCY_C_EXT
00047 #endif
00048
00049 #ifndef __HISTORY_C__
00050 #define _HISTORY_C_EXT extern
00051 #else
00052 #define _HISTORY_C_EXT
00053 #endif
00054
00055 typedef struct stockstruct stock;
00056
00057 struct stockstruct {
00058 char *Symbol;
00059 char *Name;
00060 char *Time;
00061 char *Date;
00062 float CurrentPrice;
00063 float LastPrice;
00064 float OpenPrice;
00065 float MinPrice;
00066 float MaxPrice;
00067 float Variation;
00068 float Pourcentage;
00069 int Volume;
00070 stock *PreviousStock;
00071 stock *NextStock;
00072 };
00073
00074
00075 typedef enum {
00076 NOERR = 0,
00077 ERRHOST = 1,
00078 ERRSOCK = 2,
00079 ERRCONN = 3,
00080 ERRWHEA = 4,
00081 ERRRHEA = 5,
00082 ERRPAHD = 7,
00083 ERRPCSV = 8,
00084 ERRPROX = 20,
00085 ERRDATE = 30,
00086 ERRDATA = 40,
00087 ERRRANG = 50
00088
00089 } libstocks_return_code;
00090
00091 _LISTS_C_EXT stock *next_stock(stock *);
00092 _LISTS_C_EXT stock *previous_stock(stock *);
00093 _LISTS_C_EXT void free_stocks(stock *);
00094 _LISTS_C_EXT stock *find_stock(stock *stocks, char *);
00095
00096 _STOCKS_C_EXT libstocks_return_code get_stocks(const char *, stock **);
00097
00098 _HTTP_C_EXT libstocks_return_code set_proxy(char *);
00099
00100
00101 _CURRENCY_C_EXT libstocks_return_code get_currency_exchange(char *,
00102 char *,
00103 float *);
00104
00105 _HISTORY_C_EXT libstocks_return_code get_history_csv(char *,
00106 char *,
00107 char *,
00108 char **);
00109
00110 _HISTORY_C_EXT libstocks_return_code get_stock_history(char *,
00111 char *,
00112 char *,
00113 stock **);
00114
00115
00116 #endif