summaryrefslogtreecommitdiff
path: root/include/libms/flowfile.h
blob: 0fe9b525add13f4097044066ef433d82124359f4 (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
#ifndef LIBMS_FLOWFILE_H
#define LIBMS_FLOWFILE_H

#include "common.h"

#ifdef __cplusplus
extern "C" {
#endif

struct MsbfInfo;

struct MsbFlowInfo {
    /* 0x00 */ unsigned char type;
    /* 0x01 */ char subType;
    /* 0x04 */ unsigned int params1n2;
    /* 0x08 */ short next;
    /* 0x0A */ unsigned short param3;
    /* 0x0C */ unsigned short param4;
    /* 0x0E */ unsigned short param5;
};

// Func names are made up

struct MsbfInfo *LMS_InitFlow(void *data);
void LMS_CloseFlow(struct MsbfInfo *info);
int LMS_GetFlow(struct MsbfInfo *info);
int LMS_GetEntrypoint(struct MsbfInfo *info, const char *label);
struct MsbFlowInfo *LMS_GetFlowElement(struct MsbfInfo *info, int index);
unsigned short *LMS_GetBranchPoints(struct MsbfInfo *info, int index);

#ifdef __cplusplus
}
#endif

#endif