forked from hundredrabbits/Orca-c
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsim.h
More file actions
20 lines (17 loc) · 647 Bytes
/
Copy pathsim.h
File metadata and controls
20 lines (17 loc) · 647 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once
#include "bank.h"
#include "base.h"
#include "mark.h"
#define ORCA_PIANO_KEYS_COUNT ((size_t)(('9' - '0') + 1 + ('z' - 'a') + 1))
#define ORCA_PIANO_BITS_NONE UINT64_C(0)
typedef U64 Piano_bits;
static inline Piano_bits piano_bits_of(Glyph g) {
if (g >= '0' && g <= '9')
return UINT64_C(1) << (U64)((Usz)('9' - g));
if (g >= 'a' && g <= 'z')
return UINT64_C(1) << (U64)(((Usz)('z' - g)) + ((Usz)('9' - '0')) + 1);
return UINT64_C(0);
}
void orca_run(Glyph* restrict gbuffer, Mark* restrict mbuffer, Usz height,
Usz width, Usz tick_number, Oevent_list* oevent_list,
Piano_bits piano_bits);