blob: c10ba41ef3f6298eb77e624f7f1b14f41555c36c [file] [log] [blame]
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -02001#include "xyarray.h"
2#include "util.h"
3
4struct xyarray *xyarray__new(int xlen, int ylen, size_t entry_size)
5{
6 size_t row_size = ylen * entry_size;
7 struct xyarray *xy = zalloc(sizeof(*xy) + xlen * row_size);
8
9 if (xy != NULL) {
10 xy->entry_size = entry_size;
11 xy->row_size = row_size;
Jiri Olsab45f65e2015-06-14 10:19:16 +020012 xy->entries = xlen * ylen;
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -020013 }
14
15 return xy;
16}
17
Jiri Olsab45f65e2015-06-14 10:19:16 +020018void xyarray__reset(struct xyarray *xy)
19{
20 size_t n = xy->entries * xy->entry_size;
21
22 memset(xy->contents, 0, n);
23}
24
Arnaldo Carvalho de Melo69aad6f2011-01-03 16:39:04 -020025void xyarray__delete(struct xyarray *xy)
26{
27 free(xy);
28}