36 lines
1.0 KiB
C
36 lines
1.0 KiB
C
|
|
#ifndef LIBPARZEL_SHADOW_H
|
|
#define LIBPARZEL_SHADOW_H
|
|
|
|
#include <stdbool.h>
|
|
#include <stdint.h>
|
|
|
|
typedef struct shadow_user
|
|
{
|
|
char *name;
|
|
|
|
} shadow_user_s;
|
|
|
|
typedef struct shadow_iterator
|
|
{
|
|
uint32_t num_users;
|
|
shadow_user_s *users;
|
|
|
|
int32_t index;
|
|
|
|
} shadow_iterator_s;
|
|
|
|
shadow_iterator_s shadow_parse (char *source, uint32_t len_source);
|
|
shadow_iterator_s shadow_new_iterator (char *path);
|
|
void shadow_cleanup (shadow_iterator_s iterator);
|
|
|
|
bool shadow_next_user (shadow_iterator_s *iterator, shadow_user_s *user);
|
|
void shadow_rewind (shadow_iterator_s *iterator);
|
|
void shadow_seek (shadow_iterator_s *iterator, int32_t distance);
|
|
|
|
uint32_t shadow_length (shadow_iterator_s *iterator);
|
|
uint32_t shadow_remaining (shadow_iterator_s *iterator);
|
|
|
|
#endif // SHADOW_PARSER_H
|
|
|