aboutsummaryrefslogtreecommitdiff
path: root/generic/OverlapMan.h
diff options
context:
space:
mode:
authorlecoanet2002-02-20 13:00:57 +0000
committerlecoanet2002-02-20 13:00:57 +0000
commit86eeded9ecb3d3de9e5cbb7c6aa4f8738c1bfb72 (patch)
tree442f33640744afe018b458d012c41cea13dda9f9 /generic/OverlapMan.h
parent6b36f92065f054abd810d956169a87180677d4f7 (diff)
downloadtkzinc-86eeded9ecb3d3de9e5cbb7c6aa4f8738c1bfb72.zip
tkzinc-86eeded9ecb3d3de9e5cbb7c6aa4f8738c1bfb72.tar.gz
tkzinc-86eeded9ecb3d3de9e5cbb7c6aa4f8738c1bfb72.tar.bz2
tkzinc-86eeded9ecb3d3de9e5cbb7c6aa4f8738c1bfb72.tar.xz
Int�gration des modifs de D.Pavet concernant l'interface d'antirec et les nouveaux controles sur l'antirec.
Diffstat (limited to 'generic/OverlapMan.h')
-rw-r--r--generic/OverlapMan.h76
1 files changed, 47 insertions, 29 deletions
diff --git a/generic/OverlapMan.h b/generic/OverlapMan.h
index 38c59d1..4ec542e 100644
--- a/generic/OverlapMan.h
+++ b/generic/OverlapMan.h
@@ -51,8 +51,11 @@ OmRegister(void *w,
int *label_width, int *label_height,
*/
int *rho, int *theta,
- int *visibility),
- void (*_fset_label_angle)(void *ptr, void *item, int theta),
+ int *visibility,
+ int *locked ,
+ int *preferred_angle ,
+ int *convergence_style),
+ void (*_fset_label_angle)(void *ptr, void *item, int rho, int theta),
void (*_fquery_label_pos)(void *ptr, void *item, int theta,
int *x, int *y, int *w, int *h));
void
@@ -63,35 +66,50 @@ OmProcessOverlap(void *zinc,
int height,
double scale);
+
+/*
+ * Parameter data type which ease exchange of parameters between
+ * Radar Image toolkit and Om library
+ */
+#define OM_PARAM_END 0
+#define OM_PARAM_INT 1
+#define OM_PARAM_FLOAT 2
+#define OM_PARAM_DOUBLE 3
+#define OM_PARAM_STRING 4
+
+
+typedef struct {
+ int type ; /* should be among OM_PARAM_ */
+ char name[50] ;
+} OmParam ;
+
+
/*
- * These are overlap manager public functions used
- * to set various parameters controlling the algorithm
- * behavior.
+ * These are the generic overlap manager public functions used
+ * to set/get any parameters that the Om library allow to modify
+ * dynamically (tunable parameters)
*/
-void
-OmSetParam(double repulsion,
- double repulsion_bearing,
- double friction,
- double best_position_attraction,
- double screen_edge_repulsion);
-void
-OmGetParam(double *repulsion,
- double *repulsion_bearing,
- double *friction,
- double *best_position_attraction,
- double *screen_edge_repulsion);
-void
-OmGetMinParam(double *min_repulsion,
- double *min_repulsion_bearing,
- double *min_friction,
- double *min_best_position_attraction,
- double *min_screen_edge_repulsion);
-void
-OmGetMaxParam(double *max_repulsion,
- double *max_repulsion_bearing,
- double *max_friction,
- double *max_best_position_attraction,
- double *max_screen_edge_repulsion);
+
+/* OmSetNParam
+ return 1 if ok , anythingelse if nok (non existing parameters ,
+ wrong type) */
+int
+OmSetNParam(char *name, /* parameter's name */
+ void *value);
+/* OmGetNParam
+ return 1 if ok , anythingelse if nok (non existing parameters ,
+ wrong type)
+ */
+int
+OmGetNParam(char *name, /* parameter's name */
+ void *ptvalue);
+
+/* OmGetNParamList
+ return 1 and next index if remains to read, the current param
+ being written in current_param
+ return 0 if end of list and no param */
+int
+OmGetNParamList(OmParam *current_param, int *idx_next);
#endif /* _OverlapMan_h */