Cleanup for lq_plugin system, preparation for default fpm
[olsrd.git] / lib / lq_etx_fpm / src / lq_etx_fpm.h
index 1078e6f..f28ecde 100644 (file)
 #define LQ_PLUGIN_RELEVANT_COSTCHANGE 16
 
 #define LQ_ETX_FPM_HANDLER_NAME "ETX metric with FPM"
-struct lq_etx_fpm {
+struct default_lq_fpm {
        fpm lq, nlq;
+       olsr_u16_t quickstart;
 };
 
-int init_lq_etx_fpm(void);
+void default_lq_initialize_fpm(void);
 
-olsr_linkcost lq_etx_fpm_calc_cost(const void *lq);
+olsr_linkcost default_lq_calc_cost_fpm(const void *lq);
 
-olsr_bool lq_etx_fpm_olsr_is_relevant_costchange(olsr_linkcost c1, olsr_linkcost c2);
+olsr_bool default_lq_is_relevant_costchange_fpm(olsr_linkcost c1, olsr_linkcost c2);
 
-olsr_linkcost lq_etx_fpm_packet_loss_worker(struct link_entry *link, void *lq, olsr_bool lost);
-void lq_etx_fpm_olsr_memorize_foreign_hello_lq(void *local, void *foreign);
+olsr_linkcost default_lq_packet_loss_worker_fpm(struct link_entry *link, void *lq, olsr_bool lost);
+void default_lq_memorize_foreign_hello_fpm(void *local, void *foreign);
 
-int lq_etx_fpm_olsr_serialize_hello_lq_pair(unsigned char *buff, void *lq);
-void lq_etx_fpm_olsr_deserialize_hello_lq_pair(const olsr_u8_t **curr, void *lq);
-int lq_etx_fpm_olsr_serialize_tc_lq_pair(unsigned char *buff, void *lq);
-void lq_etx_fpm_olsr_deserialize_tc_lq_pair(const olsr_u8_t **curr, void *lq);
+int default_lq_serialize_hello_lq_pair_fpm(unsigned char *buff, void *lq);
+void default_lq_deserialize_hello_lq_pair_fpm(const olsr_u8_t **curr, void *lq);
+int default_lq_serialize_tc_lq_pair_fpm(unsigned char *buff, void *lq);
+void default_lq_deserialize_tc_lq_pair_fpm(const olsr_u8_t **curr, void *lq);
 
-void lq_etx_fpm_olsr_copy_link_lq_into_tc(void *target, void *source);
-void lq_etx_fpm_olsr_clear_lq(void *target);
+void default_lq_copy_link2tc_fpm(void *target, void *source);
+void default_lq_clear_fpm(void *target);
 
-const char *lq_etx_fpm_olsr_print_lq(void *ptr, struct lqtextbuffer *buffer);
-const char *lq_etx_fpm_olsr_print_cost(olsr_linkcost cost, struct lqtextbuffer *buffer);
+const char *default_lq_print_fpm(void *ptr, struct lqtextbuffer *buffer);
+const char *default_lq_print_cost_fpm(olsr_linkcost cost, struct lqtextbuffer *buffer);
+
+extern struct lq_handler lq_etx_fpm_handler;
 
 #endif /*LQ_ETX_FPM_*/