Data Fields | |
| EINA_MAGIC | |
| Indicates whether Eina Magic should be used. | |
| const char * | filename |
| The absolute path of the file. More... | |
| Eina_Hash * | map |
| Tracks portions of a file that have been mapped with mmap(2). More... | |
| Eina_Hash * | rmap |
| Similar function to map, but used to look up mapped areas by pointer rather than offset/length. | |
| void * | global_map |
| A pointer to the entire contents of the file that have been mapped with mmap(2). More... | |
| Eina_Lock | lock |
| A file locking mechanism. | |
| unsigned long long | length |
| The length of the file in bytes. | |
| time_t | mtime |
| The last modified time. | |
| ino_t | inode |
| The inode. | |
| int | refcount |
| Keeps track of references to map. | |
| int | global_refcount |
| Keeps track of references to global_map. | |
| Eina_Statgen | statgen |
| For inexact stats a stat gen count to rate limit syscalls to stat file. | |
| int | fd |
| The file descriptor. | |
| Eina_List * | dead_map |
| Tracks regions that get a failure from mmap(2). | |
| Eina_Bool | shared: 1 |
| Indicates whether this file can be shared. | |
| Eina_Bool | delete_me: 1 |
| Indicates that this file should be deleted. | |
| Eina_Bool | global_faulty: 1 |
| Indicates whether global_map is bad. | |
| Eina_Bool | global_hugetlb: 1 |
| Indicates whether global_map uses HugeTLB. | |
| virtual | Eina_Bool: 1 |
| Indicates that this is a virtual file. | |
| Eina_Bool | copied: 1 |
| Indicates whether this file has copied data. | |
This is the underlying data structure that represents a file in Eina.
| const char* _Eina_File::filename |
The absolute path of the file.
Note that the path given when calling eina_file_open will be run through eina_file_path_sanitize before it is stored here.
Referenced by eina_file_clean_close(), eina_file_close(), eina_file_dup(), eina_file_filename_get(), eina_file_open(), eina_file_refresh(), and eina_file_virtualize().
| Eina_Hash* _Eina_File::map |
Tracks portions of a file that have been mapped with mmap(2).
The key is a tuple offset/length and the data is a pointer to the mapped region.
Referenced by eina_file_clean_close(), eina_file_common_map_free(), eina_file_flush(), eina_file_map_new(), eina_file_virtual_map_free(), eina_file_virtual_map_new(), and eina_file_virtualize().
| void* _Eina_File::global_map |
A pointer to the entire contents of the file that have been mapped with mmap(2).
This is the common case, and EFL and is optimized for it.
Referenced by eina_file_dup(), eina_file_flush(), eina_file_map_all(), eina_file_map_faulted(), eina_file_map_free(), eina_file_map_populate(), eina_file_virtual_map_all(), eina_file_virtual_map_free(), eina_file_virtual_map_new(), and eina_file_virtualize().