PC_graph/math_functions.h
2024-12-18 15:52:01 +01:00

33 lines
741 B
C

#ifndef MATH_FUNCTIONS_H
#define MATH_FUNCTIONS_H
#include <stdlib.h>
#define MAX_MATH_FUNCTION_ARGS 2
/**
* @brief Ukazatel na vyhodnocovač matematické funkce
*/
typedef double (*math_function_ptr)(const double*);
/**
* @brief Matematická funkce
*
* Struktura popisující matematickou funkci, kterou lze použít ve vstupním výrazu
*/
struct math_function {
const char *name;
size_t num_args;
math_function_ptr ptr;
};
/**
* @brief Vrátí ukazatel na pole obsahující matematické funkce
*
* Toto pole je ukončené položkou s atributem name == NULL.
*
* @return Ukazatel na pole funkcí
*/
const struct math_function *fns_get(void);
#endif /* MATH_FUNCTIONS_H */