blob: f9366c8fa4088e72a89b2b5f558600fdc074d314 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
/**
* $Id: fetch.h,v 1.2 2003/01/06 00:04:43 bursa Exp $
*/
#ifndef _NETSURF_DESKTOP_FETCH_H_
#define _NETSURF_DESKTOP_FETCH_H_
#include "libxml/HTMLparser.h"
#include "netsurf/render/box.h"
#include "netsurf/render/css.h"
#include "netsurf/desktop/browser.h"
#include <time.h>
typedef enum {fetch_CURL} fetch_type;
typedef enum {fetch_STATUS_SEND, fetch_STATUS_WAIT, fetch_STATUS_FETCH, fetch_STATUS_FINISH, fetch_DELETED} fetch_status;
typedef int fetch_flags;
#define fetch_DO_NOT_CHECK_CACHE ((fetch_flags) 1);
#define fetch_DO_NOT_STORE_IN_CACHE ((fetch_flags) 2);
struct fetch_request {
enum {REQUEST_FROM_BROWSER} type;
union {struct browser_window* browser;} requestor;
};
struct fetch
{
char* location;
fetch_type type;
fetch_flags flags;
fetch_status status;
int bytes_fetched;
int bytes_total;
struct fetch_request* request;
time_t start_time;
struct fetch* next;
};
struct fetch* create_fetch(char* location, char* previous, fetch_flags f, struct fetch_request* r);
void fetch_destroy(struct fetch* f);
struct fetch* fetch_cancel(struct fetch* f);
void fetch_receive(struct fetch* f, int amount, char* bytes);
struct fetch* fetch_poll(struct fetch* f);
#endif
|