|  |  |  | hkl Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | ||||
HklHolder; HklGeometryConfig; HklGeometry; HklGeometryList; HklGeometryListItem; void (*HklGeometryListMultiplyFunction) (HklGeometryList *self,size_t idx); HklAxis * hkl_holder_add_rotation_axis (HklHolder *self,char const *name,double x,double y,double z); HklGeometry * hkl_geometry_new (void); HklGeometry * hkl_geometry_new_copy (HklGeometry const *self); void hkl_geometry_free (HklGeometry *self); void hkl_geometry_init_geometry (HklGeometry *self,HklGeometry const *src); HklHolder * hkl_geometry_add_holder (HklGeometry *self); void hkl_geometry_update (HklGeometry *self); HklAxis * hkl_geometry_get_axis_by_name (HklGeometry *self,char const *name); void hkl_geometry_randomize (HklGeometry *self); int hkl_geometry_set_values_v (HklGeometry *self,size_t len,...); double hkl_geometry_distance (HklGeometry *self,HklGeometry *geom); double hkl_geometry_distance_orthodromic (HklGeometry *self,HklGeometry *geom); int hkl_geometry_closest_from_geometry_with_range (HklGeometry *self,HklGeometry *ref); int hkl_geometry_is_valid (HklGeometry const *self); void hkl_geometry_fprintf (FILE *file,HklGeometry const *self); HklGeometryList * hkl_geometry_list_new (void); void hkl_geometry_list_free (HklGeometryList *self); void hkl_geometry_list_add (HklGeometryList *self,HklGeometry *geometry); void hkl_geometry_list_reset (HklGeometryList *self); void hkl_geometry_list_sort (HklGeometryList *self,HklGeometry *ref); void hkl_geometry_list_fprintf (FILE *f,HklGeometryList const *self); void hkl_geometry_list_multiply (HklGeometryList *self); void hkl_geometry_list_multiply_from_range (HklGeometryList *self); void hkl_geometry_list_remove_invalid (HklGeometryList *self); int hkl_geometry_list_len (HklGeometryList *self); int hkl_geometry_list_is_empty (HklGeometryList *self); HklGeometryListItem * hkl_geometry_list_item_new (HklGeometry *geometry); void hkl_geometry_list_item_free (HklGeometryListItem *self);
typedef struct {
	HklGeometry *geometry;
	HKL_LIST(size_t, idx);
	HklQuaternion q;
} HklHolder;
typedef struct {
	const HklGeometryConfig *config;
	HklSource source;
	HKL_LIST(HklAxis, axes);
	HKL_LIST(HklHolder, holders);
} HklGeometry;
typedef struct {
	HKL_LIST(HklGeometryListItem *, items);
	HklGeometryListMultiplyFunction multiply;
} HklGeometryList;
void (*HklGeometryListMultiplyFunction) (HklGeometryList *self,size_t idx);
| 
 | |
| 
 | 
HklAxis * hkl_holder_add_rotation_axis (HklHolder *self,char const *name,double x,double y,double z);
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| Returns : | 
HklGeometry *       hkl_geometry_new_copy               (HklGeometry const *self);
| 
 | |
| Returns : | 
void hkl_geometry_init_geometry (HklGeometry *self,HklGeometry const *src);
| 
 | |
| 
 | 
HklHolder *         hkl_geometry_add_holder             (HklGeometry *self);
| 
 | |
| Returns : | 
HklAxis * hkl_geometry_get_axis_by_name (HklGeometry *self,char const *name);
| 
 | |
| 
 | |
| Returns : | 
int hkl_geometry_set_values_v (HklGeometry *self,size_t len,...);
| 
 | |
| 
 | |
| 
 | |
| Returns : | 
double hkl_geometry_distance (HklGeometry *self,HklGeometry *geom);
| 
 | |
| 
 | |
| Returns : | 
double hkl_geometry_distance_orthodromic (HklGeometry *self,HklGeometry *geom);
| 
 | |
| 
 | |
| Returns : | 
int hkl_geometry_closest_from_geometry_with_range (HklGeometry *self,HklGeometry *ref);
| 
 | |
| 
 | |
| Returns : | 
void hkl_geometry_fprintf (FILE *file,HklGeometry const *self);
| 
 | |
| 
 | 
void hkl_geometry_list_add (HklGeometryList *self,HklGeometry *geometry);
| 
 | |
| 
 | 
void hkl_geometry_list_sort (HklGeometryList *self,HklGeometry *ref);
| 
 | |
| 
 | 
void hkl_geometry_list_fprintf (FILE *f,HklGeometryList const *self);
| 
 | |
| 
 | 
void                hkl_geometry_list_multiply_from_range
                                                        (HklGeometryList *self);
| 
 | 
void                hkl_geometry_list_remove_invalid    (HklGeometryList *self);
| 
 | 
int                 hkl_geometry_list_is_empty          (HklGeometryList *self);
| 
 | |
| Returns : | 
HklGeometryListItem * hkl_geometry_list_item_new        (HklGeometry *geometry);
| 
 | |
| Returns : |