Classes | Macros | Typedefs | Enumerations | Functions
minicoro.h File Reference
#include <stddef.h>
Include dependency graph for minicoro.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mco_coro
 
struct  mco_desc
 

Macros

#define MCO_API   extern
 
#define MCO_DEFAULT_STORAGE_SIZE   1024
 

Typedefs

typedef struct mco_coro mco_coro
 
typedef struct mco_desc mco_desc
 
typedef enum mco_result mco_result
 
typedef enum mco_state mco_state
 

Enumerations

enum  mco_result {
  MCO_SUCCESS = 0, MCO_GENERIC_ERROR, MCO_INVALID_POINTER, MCO_INVALID_COROUTINE,
  MCO_NOT_SUSPENDED, MCO_NOT_RUNNING, MCO_MAKE_CONTEXT_ERROR, MCO_SWITCH_CONTEXT_ERROR,
  MCO_NOT_ENOUGH_SPACE, MCO_OUT_OF_MEMORY, MCO_INVALID_ARGUMENTS, MCO_INVALID_OPERATION,
  MCO_STACK_OVERFLOW
}
 
enum  mco_state { MCO_DEAD = 0, MCO_NORMAL, MCO_RUNNING, MCO_SUSPENDED }
 

Functions

MCO_API mco_result mco_create (mco_coro **out_co, mco_desc *desc)
 
MCO_API mco_desc mco_desc_init (void(*func)(mco_coro *co), size_t stack_size)
 
MCO_API mco_result mco_destroy (mco_coro *co)
 
MCO_API size_t mco_get_bytes_stored (mco_coro *co)
 
MCO_API size_t mco_get_storage_size (mco_coro *co)
 
MCO_API void * mco_get_user_data (mco_coro *co)
 
MCO_API mco_result mco_init (mco_coro *co, mco_desc *desc)
 
MCO_API mco_result mco_peek (mco_coro *co, void *dest, size_t len)
 
MCO_API mco_result mco_pop (mco_coro *co, void *dest, size_t len)
 
MCO_API mco_result mco_push (mco_coro *co, const void *src, size_t len)
 
const MCO_API char * mco_result_description (mco_result res)
 
MCO_API mco_result mco_resume (mco_coro *co)
 
MCO_API mco_coromco_running (void)
 
MCO_API mco_state mco_status (mco_coro *co)
 
MCO_API mco_result mco_uninit (mco_coro *co)
 
MCO_API mco_result mco_yield (mco_coro *co)
 

Macro Definition Documentation

◆ MCO_API

#define MCO_API   extern

Definition at line 207 of file minicoro.h.

◆ MCO_DEFAULT_STORAGE_SIZE

#define MCO_DEFAULT_STORAGE_SIZE   1024

Definition at line 212 of file minicoro.h.

Typedef Documentation

◆ mco_coro

typedef struct mco_coro mco_coro

Definition at line 245 of file minicoro.h.

◆ mco_desc

typedef struct mco_desc mco_desc

◆ mco_result

typedef enum mco_result mco_result

◆ mco_state

typedef enum mco_state mco_state

Enumeration Type Documentation

◆ mco_result

enum mco_result
Enumerator
MCO_SUCCESS 
MCO_GENERIC_ERROR 
MCO_INVALID_POINTER 
MCO_INVALID_COROUTINE 
MCO_NOT_SUSPENDED 
MCO_NOT_RUNNING 
MCO_MAKE_CONTEXT_ERROR 
MCO_SWITCH_CONTEXT_ERROR 
MCO_NOT_ENOUGH_SPACE 
MCO_OUT_OF_MEMORY 
MCO_INVALID_ARGUMENTS 
MCO_INVALID_OPERATION 
MCO_STACK_OVERFLOW 

Definition at line 228 of file minicoro.h.

◆ mco_state

enum mco_state
Enumerator
MCO_DEAD 
MCO_NORMAL 
MCO_RUNNING 
MCO_SUSPENDED 

Definition at line 220 of file minicoro.h.

Function Documentation

◆ mco_create()

MCO_API mco_result mco_create ( mco_coro **  out_co,
mco_desc desc 
)

◆ mco_desc_init()

MCO_API mco_desc mco_desc_init ( void(*)(mco_coro *co)  func,
size_t  stack_size 
)

◆ mco_destroy()

MCO_API mco_result mco_destroy ( mco_coro co)

◆ mco_get_bytes_stored()

MCO_API size_t mco_get_bytes_stored ( mco_coro co)

◆ mco_get_storage_size()

MCO_API size_t mco_get_storage_size ( mco_coro co)

◆ mco_get_user_data()

MCO_API void* mco_get_user_data ( mco_coro co)

◆ mco_init()

MCO_API mco_result mco_init ( mco_coro co,
mco_desc desc 
)

◆ mco_peek()

MCO_API mco_result mco_peek ( mco_coro co,
void *  dest,
size_t  len 
)

◆ mco_pop()

MCO_API mco_result mco_pop ( mco_coro co,
void *  dest,
size_t  len 
)

◆ mco_push()

MCO_API mco_result mco_push ( mco_coro co,
const void *  src,
size_t  len 
)

◆ mco_result_description()

const MCO_API char* mco_result_description ( mco_result  res)

◆ mco_resume()

MCO_API mco_result mco_resume ( mco_coro co)

◆ mco_running()

MCO_API mco_coro* mco_running ( void  )

◆ mco_status()

MCO_API mco_state mco_status ( mco_coro co)

◆ mco_uninit()

MCO_API mco_result mco_uninit ( mco_coro co)

◆ mco_yield()

MCO_API mco_result mco_yield ( mco_coro co)


behaviortree_cpp_v4
Author(s): Davide Faconti
autogenerated on Fri Jun 28 2024 02:20:08