YAC 3.18.0
Yet Another Coupler
Loading...
Searching...
No Matches
param_distance.c File Reference
#include "param_distance.h"
#include "param_dble.h"
#include "param_internal.h"
#include "geometry.h"
#include "yac_assert.h"
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <limits.h>
Include dependency graph for param_distance.c:

Go to the source code of this file.

Data Structures

struct  yac_param_distance
 

Functions

static enum yac_param_type yac_param_distance_get_type (const struct yac_param *param)
 
static int yac_param_distance_is_default (const struct yac_param *param)
 
static const char * yac_param_distance_get_name (const struct yac_param *param)
 
static void yac_param_distance_delete (struct yac_param *param)
 
static int yac_param_distance_set_scalar_dble (struct yac_param *param, double value)
 
static int yac_param_distance_set_scalar (struct yac_param *param, const char *value_str)
 
static int yac_param_distance_get_scalar_dble (const struct yac_param *param, double *value)
 
static int yac_param_distance_get_scalar (const struct yac_param *param, char *buf, size_t buflen)
 
static int yac_param_distance_set_scalar_int (struct yac_param *param, int value)
 
static int yac_param_distance_get_scalar_int (const struct yac_param *param, int *value)
 
struct yac_paramyac_param_distance_new (const char *name, double *value_ptr, double default_value, double value_min, double value_max, int has_default, int is_defined)
 Create a distance parameter (stored in radians)
 

Variables

static const struct yac_param_vtable yac_param_distance_vtable
 

Function Documentation

◆ yac_param_distance_delete()

static void yac_param_distance_delete ( struct yac_param * param)
static

Definition at line 41 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_get_name()

static const char * yac_param_distance_get_name ( const struct yac_param * param)
static

Definition at line 34 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_get_scalar()

static int yac_param_distance_get_scalar ( const struct yac_param * param,
char * buf,
size_t buflen )
static

Definition at line 82 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_get_scalar_dble()

static int yac_param_distance_get_scalar_dble ( const struct yac_param * param,
double * value )
static

Definition at line 72 of file param_distance.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_param_distance_get_scalar_int()

static int yac_param_distance_get_scalar_int ( const struct yac_param * param,
int * value )
static

Definition at line 100 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_get_type()

static enum yac_param_type yac_param_distance_get_type ( const struct yac_param * param)
static

Definition at line 21 of file param_distance.c.

◆ yac_param_distance_is_default()

static int yac_param_distance_is_default ( const struct yac_param * param)
static

Definition at line 27 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_new()

struct yac_param * yac_param_distance_new ( const char * name,
double * value_ptr,
double default_value,
double value_min,
double value_max,
int has_default,
int is_defined )

Create a distance parameter (stored in radians)

Unit handling:

  • Numeric setter/getter APIs use radians.
  • String setter/getter APIs use degrees by default.
  • String setter accepts optional unit suffixes deg, rad, d, r (case-insensitive); if present, conversion is applied accordingly.
Parameters
nameName of the parameter
value_ptrPointer to the double value (in radians)
default_valueDefault value (in radians, ignored if has_default is false)
value_minMinimum allowed value (inclusive, in radians, must be >= 0)
value_maxMaximum allowed value (inclusive, in radians, must be <= M_PI)
has_defaultIf true, parameter has a default value; if false, value is undefined until set
is_definedIf true, initial value is considered defined; if false, initial value is considered undefined and user must set it before getting

Requirements:

  • value_min >= 0
  • value_max <= M_PI
  • value_min <= value_max
Returns
Pointer to new parameter handle

Definition at line 135 of file param_distance.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_param_distance_set_scalar()

static int yac_param_distance_set_scalar ( struct yac_param * param,
const char * value_str )
static

Definition at line 57 of file param_distance.c.

Here is the call graph for this function:

◆ yac_param_distance_set_scalar_dble()

static int yac_param_distance_set_scalar_dble ( struct yac_param * param,
double value )
static

Definition at line 49 of file param_distance.c.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ yac_param_distance_set_scalar_int()

static int yac_param_distance_set_scalar_int ( struct yac_param * param,
int value )
static

Definition at line 95 of file param_distance.c.

Here is the call graph for this function:

Variable Documentation

◆ yac_param_distance_vtable

const struct yac_param_vtable yac_param_distance_vtable
static
Initial value:
= {
.get_sub_count = NULL,
.get_sub_by_name = NULL,
.get_sub_by_index = NULL,
.append = NULL,
}
static int yac_param_distance_set_scalar_dble(struct yac_param *param, double value)
static int yac_param_distance_get_scalar(const struct yac_param *param, char *buf, size_t buflen)
static int yac_param_distance_set_scalar(struct yac_param *param, const char *value_str)
static const char * yac_param_distance_get_name(const struct yac_param *param)
static int yac_param_distance_set_scalar_int(struct yac_param *param, int value)
static int yac_param_distance_get_scalar_dble(const struct yac_param *param, double *value)
static enum yac_param_type yac_param_distance_get_type(const struct yac_param *param)
static int yac_param_distance_get_scalar_int(const struct yac_param *param, int *value)
static void yac_param_distance_delete(struct yac_param *param)
static int yac_param_distance_is_default(const struct yac_param *param)

Definition at line 117 of file param_distance.c.