~ubuntu-branches/ubuntu/vivid/cctools/vivid

« back to all changes in this revision

Viewing changes to dttools/src/bitmap.h

  • Committer: Bazaar Package Importer
  • Author(s): Michael Hanke
  • Date: 2011-05-07 09:05:00 UTC
  • Revision ID: james.westby@ubuntu.com-20110507090500-lqpmdtwndor6e7os
Tags: upstream-3.3.2
ImportĀ upstreamĀ versionĀ 3.3.2

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
Copyright (C) 2003-2004 Douglas Thain and the University of Wisconsin
 
3
Copyright (C) 2005- The University of Notre Dame
 
4
This software is distributed under the GNU General Public License.
 
5
See the file COPYING for details.
 
6
*/
 
7
 
 
8
#ifndef BITMAP_H
 
9
#define BITMAP_H
 
10
 
 
11
struct bitmap * bitmap_create( int w, int h );
 
12
void            bitmap_delete( struct bitmap *b );
 
13
 
 
14
int   bitmap_get( struct bitmap *b, int x, int y );
 
15
void  bitmap_set( struct bitmap *b, int x, int y, int value );
 
16
int   bitmap_width( struct bitmap *b );
 
17
int   bitmap_height( struct bitmap *b );
 
18
void  bitmap_reset( struct bitmap *b, int value );
 
19
int  *bitmap_data( struct bitmap *b );
 
20
 
 
21
void  bitmap_rotate_clockwise( struct bitmap *s, struct bitmap *t );
 
22
void  bitmap_rotate_counterclockwise( struct bitmap *s, struct bitmap *t );
 
23
 
 
24
int  bitmap_average( struct bitmap *s );
 
25
void bitmap_smooth( struct bitmap *s, struct bitmap *t, int msize );
 
26
void bitmap_subset( struct bitmap *s, int x, int y, struct bitmap *t );
 
27
void bitmap_convolve( struct bitmap *s, struct bitmap *t, int (*f)( int x ) );
 
28
void bitmap_copy( struct bitmap *s, struct bitmap *t );
 
29
 
 
30
struct bitmap * bitmap_load_any( const char *path );
 
31
 
 
32
struct bitmap * bitmap_load_raw( const char *file );
 
33
struct bitmap * bitmap_load_bmp( const char *file );
 
34
struct bitmap * bitmap_load_pcx( const char *file );
 
35
struct bitmap * bitmap_load_sgi_rgb( const char *file );
 
36
struct bitmap * bitmap_load_jpeg( const char *file );
 
37
 
 
38
int  bitmap_save_raw( struct bitmap *b, const char *file );
 
39
int  bitmap_save_bmp( struct bitmap *b, const char *file );
 
40
int  bitmap_save_jpeg( struct bitmap *b, const char *file );
 
41
 
 
42
#ifndef MAKE_RGBA
 
43
/** Create a 32-bit RGBA value from 8-bit red, green, blue, and alpha values */
 
44
#define MAKE_RGBA(r,g,b,a) ( (((int)(a))<<24) | (((int)(r))<<16) | (((int)(g))<<8) | (((int)(b))<<0) )
 
45
#endif
 
46
 
 
47
#ifndef GET_RED
 
48
/** Extract an 8-bit red value from a 32-bit RGBA value. */
 
49
#define GET_RED(rgba) (( (rgba)>>16 ) & 0xff )
 
50
#endif
 
51
 
 
52
#ifndef GET_GREEN
 
53
/** Extract an 8-bit green value from a 32-bit RGBA value. */
 
54
#define GET_GREEN(rgba) (( (rgba)>>8 ) & 0xff )
 
55
#endif
 
56
 
 
57
#ifndef GET_BLUE
 
58
/** Extract an 8-bit blue value from a 32-bit RGBA value. */
 
59
#define GET_BLUE(rgba) (( (rgba)>>0 ) & 0xff )
 
60
#endif
 
61
 
 
62
#ifndef GET_ALPHA
 
63
/** Extract an 8-bit alpha value from a 32-bit RGBA value. */
 
64
#define GET_ALPHA(rgba) (( (rgba)>>24 ) & 0xff)
 
65
#endif
 
66
 
 
67
#endif
 
68