aboutsummaryrefslogtreecommitdiff
path: root/src/blocks/scheme.h
blob: a3dc9c278ebc0ebc6b944b50c687cc071ceeeed0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#ifndef COMET_SCHEME_H
#define COMET_SCHEME_H

#include "../config.h"

typedef struct block_scheme block_scheme_t;

typedef bool (*block_validate_t)(block_t *block, const block_scheme_t *scheme);

struct block_scheme {
    const char *name;
    block_t block;
    size_t size;
    const config_entry_t *entries;
    block_validate_t validate;
};

extern const block_scheme_t *block_schemes[];

#endif