/////////////////////////////
// pixel format conversion //
/////////////////////////////

#ifndef __PTC_CONVERT_H
#define __PTC_CONVERT_H

#include "misc.h"
#include "config.h"







// area converter information struct
#pragma pack(1)
struct AREADATA
{
    int src_x          PACKED;
    int dest_x         PACKED;
    int src_y          PACKED;
    int dest_y         PACKED;
    void* src_base     PACKED;
    void* dest_base    PACKED;
    void* src_start    PACKED;
    void* dest_start   PACKED;
    int src_adjust     PACKED;
    int dest_adjust    PACKED;
    int width          PACKED;
    int height         PACKED;
    int src_pitch      PACKED;
    int dest_pitch     PACKED;
};
#pragma pack()





// converter function types
#ifdef __X86__
typedef void* CONVERT_FUNCTION;
typedef void* AREACONVERT_FUNCTION;
typedef void* PARTIALCONVERT_FUNCTION;
#else
typedef void (*CONVERT_FUNCTION)(void *src,void *dest,uint pixels,void *extra);
typedef void (*AREACONVERT_FUNCTION)(AREADATA *data,void *extra);
typedef void (*PARTIALCONVERT_FUNCTION)(void *src,void *dest,uint start_byte,uint stop_byte,void *extra);
#endif






#endif
