summaryrefslogtreecommitdiff
path: root/src/OutputImage.cxx
blob: b4c4739994d20bb4fa705bf135dfa724ae074d06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
//
// Copyright 2006-2009 Johannes Hofmann <Johannes.Hofmann@gmx.de>
//
// This software may be used and distributed according to the terms
// of the GNU General Public License, incorporated herein by reference.

#include <stdlib.h>
#include <stdio.h>

#include "OutputImage.H"

OutputImage::OutputImage() {
	W = 0;
	H = 0;
	initialized = 0;
}

int
OutputImage::init(int w1, int h1) {
	int ret;

	W = w1;
	H = h1;
	line = 0;

	ret = init_internal();

	if (ret == 0)
		initialized = 1;
		
	return ret;
}

int
OutputImage::set_pixel(int x, int r, int g, int b) {
	if (!initialized || x < 0 || x >= W)
		return 1;
	else
		return set_pixel_internal(x, r, g, b);
}

int
OutputImage::next_line() {
	if (!initialized || line++ >= H)
		return 1;
	else
		return next_line_internal();
}

int
OutputImage::done() {
	if (!initialized) {
		return 1;
	} else {
		next_line();
		return done_internal();
	}
}