aboutsummaryrefslogtreecommitdiff
path: root/src/main/extractor_plugins.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/extractor_plugins.h')
-rw-r--r--src/main/extractor_plugins.h62
1 files changed, 55 insertions, 7 deletions
diff --git a/src/main/extractor_plugins.h b/src/main/extractor_plugins.h
index ea0eabb..bea5c2b 100644
--- a/src/main/extractor_plugins.h
+++ b/src/main/extractor_plugins.h
@@ -64,7 +64,9 @@ struct EXTRACTOR_PluginList
64 /** 64 /**
65 * Pointer to the function used for meta data extraction. 65 * Pointer to the function used for meta data extraction.
66 */ 66 */
67 EXTRACTOR_ExtractMethod extractMethod; 67 EXTRACTOR_extract_method extract_method;
68 EXTRACTOR_init_state_method init_state_method;
69 EXTRACTOR_discard_state_method discard_state_method;
68 70
69 /** 71 /**
70 * Options for the plugin. 72 * Options for the plugin.
@@ -84,26 +86,72 @@ struct EXTRACTOR_PluginList
84 enum EXTRACTOR_Options flags; 86 enum EXTRACTOR_Options flags;
85 87
86 /** 88 /**
87 * Process ID of the child process for this plugin. 0 for 89 * Process ID of the child process for this plugin. 0 for none.
88 * none.
89 */ 90 */
90#ifndef WINDOWS 91#if !WINDOWS
91 int cpid; 92 int cpid;
92#else 93#else
93 HANDLE hProcess; 94 HANDLE hProcess;
94#endif 95#endif
95 96
96 /** 97 /**
97 * Pipe used to send information about shared memory segments to 98 * Pipe used to communicate information to the plugin child process.
98 * the child process. NULL if not initialized. 99 * NULL if not initialized.
99 */ 100 */
101#if !WINDOWS
100 FILE *cpipe_in; 102 FILE *cpipe_in;
103#else
104 HANDLE cpipe_in;
105#endif
106
107 /**
108 * A position this plugin wants us to seek to. -1 if it's finished.
109 * Starts at 0;
110 */
111 int64_t seek_request;
112
113#if !WINDOWS
114 int shm_id;
115#else
116 HANDLE map_handle;
117#endif
118
119 void *state;
120
121 int64_t fsize;
122
123 int64_t position;
124
125 unsigned char *shm_ptr;
126
127 size_t map_size;
101 128
102 /** 129 /**
103 * Pipe used to read information about extracted meta data from 130 * Pipe used to read information about extracted meta data from
104 * the child process. -1 if not initialized. 131 * the plugin child process. -1 if not initialized.
105 */ 132 */
133#if !WINDOWS
106 int cpipe_out; 134 int cpipe_out;
135#else
136 HANDLE cpipe_out;
137#endif
138
139#if WINDOWS
140 /**
141 * A structure for overlapped reads on W32.
142 */
143 OVERLAPPED ov_read;
144
145 /**
146 * A structure for overlapped writes on W32.
147 */
148 OVERLAPPED ov_write;
149
150 /**
151 * A write buffer for overlapped writes on W32
152 */
153 unsigned char *ov_write_buffer;
154#endif
107}; 155};
108 156
109/** 157/**