Blender  V3.3
BKE_unit.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
3 #pragma once
4 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 struct UnitSettings;
14 
15 /* In all cases the value is assumed to be scaled by the user-preference. */
16 
21  char *str, int len_max, double value, int prec, int system, int type, bool split, bool pad);
27  int len_max,
28  double value,
29  int prec,
30  int type,
31  const struct UnitSettings *settings,
32  bool pad);
33 
52  char *str, int len_max, const char *str_prev, double scale_pref, int system, int type);
53 
57 bool BKE_unit_string_contains_unit(const char *str, int type);
58 
62 double BKE_unit_apply_preferred_unit(const struct UnitSettings *settings, int type, double value);
63 
67 void BKE_unit_name_to_alt(char *str, int len_max, const char *orig_str, int system, int type);
68 
72 double BKE_unit_closest_scalar(double value, int system, int type);
73 
77 double BKE_unit_base_scalar(int system, int type);
78 
82 bool BKE_unit_is_valid(int system, int type);
83 
87 // double bUnit_Iter(void **unit, char **name, int system, int type);
88 
89 void BKE_unit_system_get(int system, int type, const void **r_usys_pt, int *r_len);
90 int BKE_unit_base_get(const void *usys_pt);
92 const char *BKE_unit_name_get(const void *usys_pt, int index);
93 const char *BKE_unit_display_name_get(const void *usys_pt, int index);
94 const char *BKE_unit_identifier_get(const void *usys_pt, int index);
95 double BKE_unit_scalar_get(const void *usys_pt, int index);
96 bool BKE_unit_is_suppressed(const void *usys_pt, int index);
97 
99 enum {
114 };
115 
116 #ifdef __cplusplus
117 }
118 #endif
int BKE_unit_base_of_type_get(int system, int type)
Definition: unit.c:1269
bool BKE_unit_is_valid(int system, int type)
Definition: unit.c:1246
size_t BKE_unit_value_as_string_adaptive(char *str, int len_max, double value, int prec, int system, int type, bool split, bool pad)
Definition: unit.c:665
const char * BKE_unit_display_name_get(const void *usys_pt, int index)
Definition: unit.c:1278
bool BKE_unit_is_suppressed(const void *usys_pt, int index)
Definition: unit.c:1296
void BKE_unit_system_get(int system, int type, const void **r_usys_pt, int *r_len)
Definition: unit.c:1251
@ B_UNIT_TIME_ABSOLUTE
Definition: BKE_unit.h:107
@ B_UNIT_AREA
Definition: BKE_unit.h:102
@ B_UNIT_TYPE_TOT
Definition: BKE_unit.h:113
@ B_UNIT_VOLUME
Definition: BKE_unit.h:103
@ B_UNIT_LENGTH
Definition: BKE_unit.h:101
@ B_UNIT_ROTATION
Definition: BKE_unit.h:105
@ B_UNIT_TEMPERATURE
Definition: BKE_unit.h:112
@ B_UNIT_CAMERA
Definition: BKE_unit.h:110
@ B_UNIT_ACCELERATION
Definition: BKE_unit.h:109
@ B_UNIT_MASS
Definition: BKE_unit.h:104
@ B_UNIT_NONE
Definition: BKE_unit.h:100
@ B_UNIT_POWER
Definition: BKE_unit.h:111
@ B_UNIT_TIME
Definition: BKE_unit.h:106
@ B_UNIT_VELOCITY
Definition: BKE_unit.h:108
void BKE_unit_name_to_alt(char *str, int len_max, const char *orig_str, int system, int type)
Definition: unit.c:1180
const char * BKE_unit_identifier_get(const void *usys_pt, int index)
Definition: unit.c:1282
int BKE_unit_base_get(const void *usys_pt)
Definition: unit.c:1264
size_t BKE_unit_value_as_string(char *str, int len_max, double value, int prec, int type, const struct UnitSettings *settings, bool pad)
double BKE_unit_scalar_get(const void *usys_pt, int index)
Definition: unit.c:1291
double BKE_unit_closest_scalar(double value, int system, int type)
Definition: unit.c:1220
bool BKE_unit_replace_string(char *str, int len_max, const char *str_prev, double scale_pref, int system, int type)
Definition: unit.c:1091
double BKE_unit_apply_preferred_unit(const struct UnitSettings *settings, int type, double value)
Definition: unit.c:1080
double BKE_unit_base_scalar(int system, int type)
Definition: unit.c:1236
bool BKE_unit_string_contains_unit(const char *str, int type)
Definition: unit.c:1063
const char * BKE_unit_name_get(const void *usys_pt, int index)
Definition: unit.c:1274
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
int pad[32 - sizeof(int)]
#define str(s)
void split(const std::string &s, const char delim, std::vector< std::string > &tokens)
Definition: abc_util.cc:92