Audacious  $Id:Doxyfile42802007-03-2104:39:00Znenolod$
Classes | Functions | Variables
scanner.c File Reference
#include <glib.h>
#include <pthread.h>
#include <stdlib.h>
#include <string.h>
#include <libaudcore/audstrings.h>
#include "main.h"
#include "misc.h"
#include "scanner.h"

Go to the source code of this file.

Classes

struct  ScanRequest
 

Functions

ScanRequest * scan_request (const char *filename, int flags, PluginHandle *decoder, ScanCallback callback)
 
static void scan_request_free (ScanRequest *request)
 
static void * scan_worker (void *unused)
 
const char * scan_request_get_filename (ScanRequest *request)
 
PluginHandlescan_request_get_decoder (ScanRequest *request)
 
Tuple * scan_request_get_tuple (ScanRequest *request)
 
void scan_request_get_image_data (ScanRequest *request, void **data, int64_t *len)
 
char * scan_request_get_image_file (ScanRequest *request)
 
void scanner_init (void)
 
void scanner_cleanup (void)
 

Variables

static pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER
 
static pthread_cond_t cond = PTHREAD_COND_INITIALIZER
 
static GQueue requests = G_QUEUE_INIT
 
static pthread_t scan_threads [SCAN_THREADS]
 
static bool_t quit_flag = FALSE
 

Function Documentation

ScanRequest* scan_request ( const char *  filename,
int  flags,
PluginHandle decoder,
ScanCallback  callback 
)

Definition at line 51 of file scanner.c.

Referenced by art_item_get(), and scan_queue_entry().

static void scan_request_free ( ScanRequest *  request)
static

Definition at line 70 of file scanner.c.

Referenced by scan_worker(), and scanner_cleanup().

PluginHandle* scan_request_get_decoder ( ScanRequest *  request)

Definition at line 127 of file scanner.c.

Referenced by scan_finish().

const char* scan_request_get_filename ( ScanRequest *  request)

Definition at line 122 of file scanner.c.

Referenced by request_callback().

void scan_request_get_image_data ( ScanRequest *  request,
void **  data,
int64_t *  len 
)

Definition at line 139 of file scanner.c.

Referenced by request_callback().

char* scan_request_get_image_file ( ScanRequest *  request)

Definition at line 147 of file scanner.c.

Referenced by request_callback().

Tuple* scan_request_get_tuple ( ScanRequest *  request)

Definition at line 132 of file scanner.c.

Referenced by scan_finish().

static void* scan_worker ( void *  unused)
static

Definition at line 81 of file scanner.c.

Referenced by scanner_init().

void scanner_cleanup ( void  )

Definition at line 160 of file scanner.c.

Referenced by shut_down().

void scanner_init ( void  )

Definition at line 154 of file scanner.c.

Referenced by init_two().

Variable Documentation

pthread_cond_t cond = PTHREAD_COND_INITIALIZER
static

Definition at line 43 of file scanner.c.

Referenced by scan_request(), scan_worker(), and scanner_cleanup().

pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER
static

Definition at line 42 of file scanner.c.

Referenced by scan_request(), scan_worker(), and scanner_cleanup().

bool_t quit_flag = FALSE
static

Definition at line 49 of file scanner.c.

Referenced by scan_worker(), and scanner_cleanup().

GQueue requests = G_QUEUE_INIT
static

Definition at line 45 of file scanner.c.

Referenced by scan_request(), scan_worker(), and scanner_cleanup().

pthread_t scan_threads[SCAN_THREADS]
static

Definition at line 47 of file scanner.c.

Referenced by scanner_cleanup(), and scanner_init().