mirror of
https://github.com/game-stop/veejay.git
synced 2025-12-18 05:40:02 +01:00
56 lines
1.1 KiB
Plaintext
56 lines
1.1 KiB
Plaintext
Les différentes données..
|
|
-----
|
|
|
|
typedef struct {
|
|
int32 * buf;
|
|
int32 width;
|
|
int32 height;
|
|
int32 size;
|
|
|
|
int32 * realstart;
|
|
} Surface;
|
|
-----
|
|
|
|
>> taille du buffer de zoom
|
|
guint32 mmx_zoom_size;
|
|
-----
|
|
|
|
>> les buffers bruts contiennent les px et py de chaque point
|
|
>> => brutS[0] = px0, brutS[1] = py0, brutS[2] = px1, [...]
|
|
|
|
signed int *brutS = 0, *freebrutS = 0; // source
|
|
signed int *brutD = 0, *freebrutD = 0; // dest
|
|
signed int *brutT = 0, *freebrutT = 0; // temp (en cours de génération)
|
|
|
|
>> pointeur vers p1
|
|
guint32 *expix1 = 0;
|
|
>> pointeur vers p2
|
|
guint32 *expix2 = 0;
|
|
|
|
>> largeur d'une ligne = prevX
|
|
guint32 zoom_width;
|
|
|
|
>> largeur et hauteur des differents buffers.
|
|
int prevX=0,prevY=0;
|
|
-----
|
|
|
|
>> buffratio est un fixpoint : 16,16
|
|
>> valeur normalement comprise entre 0 et 1,
|
|
>> soit 0<=buffratio<=BUFFPOINTMASK
|
|
|
|
int buffratio = 0;
|
|
|
|
#define BUFFPOINTNB 16
|
|
#define BUFFPOINTMASK 0xffff
|
|
#define BUFFINCR 0xff
|
|
-----
|
|
|
|
#define sqrtperte 16
|
|
>> faire : a % sqrtperte <=> a & pertemask
|
|
#define PERTEMASK 0xf
|
|
>> faire : a / sqrtperte <=> a >> PERTEDEC
|
|
#define PERTEDEC 4
|
|
-----
|
|
|
|
int precalCoef[16][16];
|