Subversion Repositories Kolibri OS

Rev

Rev 8016 | Rev 8339 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. enum {
  2.         PAGE=1, IMG
  3. };
  4.  
  5. struct _cache
  6. {
  7.         dword current_buf;
  8.         dword current_size;
  9.         dword current_type;
  10.         collection url;
  11.         collection_int data;
  12.         collection_int size;
  13.         collection_int type;
  14.         void add();
  15.         bool has();
  16.         void clear();
  17. } cache=0;
  18.  
  19. void _cache::add(dword _url, _data, _size, _type)
  20. {
  21.         dword data_pointer;
  22.         data_pointer = malloc(_size);
  23.         memmov(data_pointer, _data, _size);
  24.         data.add(data_pointer);
  25.  
  26.         url.add(_url);
  27.         size.add(_size);
  28.         type.add(_type);
  29. }
  30.  
  31. bool _cache::has(dword _link)
  32. {
  33.         int pos;
  34.         pos = url.get_pos_by_name(_link);
  35.         if (pos != -1) {
  36.                 current_buf = data.get(pos);
  37.                 current_size = size.get(pos);
  38.                 current_type = type.get(pos);
  39.                 return true;
  40.         }
  41.         return false;
  42. }
  43.  
  44. void _cache::clear()
  45. {
  46.         url.drop();
  47.         data.drop();
  48.         size.drop();
  49.         current_buf = NULL;
  50.         current_size = NULL;
  51. }