#pragma once

#ifdef __cplusplus
#include <cstdint>
#else
#include <stdint.h>
#include <stdbool.h>
#endif

typedef struct {
  double x, y;
} point_t;

typedef int (*run_method_t)();
typedef int (*destroy_t)();
typedef void (*update_callback_t)(unsigned int chartIndex, const char* seriesName, const point_t* points, unsigned long count);

typedef struct {
  uint32_t version;
  run_method_t run_method;
  destroy_t destroy_method;
  update_callback_t update_callback;
  int argc;
  char** argv;
} plugin_t;