summaryrefslogtreecommitdiff
path: root/cp2/sta/data/sta_data.h
diff options
context:
space:
mode:
authorlaranjeiro2008-03-28 13:33:33 +0000
committerlaranjeiro2008-03-28 13:33:33 +0000
commite807c0ce6aa0fdf24ffd17ccea87308a4a0ce6e1 (patch)
treec6a65b3f39d50079ad317d3ad8ca4d3134d808c0 /cp2/sta/data/sta_data.h
parentf184d16826377e4eefda0f08fb1ecf33c9736280 (diff)
CP2: Sta manager, data and net_list functions.
git-svn-id: svn+ssh://pessac/svn/cesar/trunk@1685 017c9cb6-072f-447c-8318-d5b54f68fe89
Diffstat (limited to 'cp2/sta/data/sta_data.h')
-rw-r--r--cp2/sta/data/sta_data.h122
1 files changed, 122 insertions, 0 deletions
diff --git a/cp2/sta/data/sta_data.h b/cp2/sta/data/sta_data.h
new file mode 100644
index 0000000000..d7dba97021
--- /dev/null
+++ b/cp2/sta/data/sta_data.h
@@ -0,0 +1,122 @@
+#ifndef cp2_sta_data_sta_data_h
+#define cp2_sta_data_sta_data_h
+/* Cesar project {{{
+ *
+ * Copyright (C) 2008 Spidcom
+ *
+ * <<<Licence>>>
+ *
+ * }}} */
+/**
+ * \file cp2/sta/data/sta_data.h
+ * \brief Sta data.
+ * \ingroup cp_sta_data
+ *
+ * Sta data.
+ */
+
+/* forward declaration. */
+typedef struct cp_sta_data_private_t cp_sta_data_private_t;
+
+struct cp_msg_reassembly_ctx_t
+{
+
+};
+typedef struct cp_msg_reassembly_ctx_t cp_msg_reassembly_ctx_t;
+
+struct cp_sta_data_t
+{
+ /** Private part. */
+ cp_sta_data_private_t private;
+ /** Visible true if the STA is visible by out STA. */
+ bool visible;
+ /** Last seen. */
+ uint last_seen_ntb;
+ /** Reassembly context. */
+ cp_msg_reassembly_ctx_t rea;
+};
+typedef struct cp_sta_data_t cp_sta_data_t;
+
+/** Get the TEI of the station.
+ * \param sta the station.
+ * \return the sta's tei.
+ */
+u8
+cp_sta_get_tei(cp_sta_t *sta);
+
+/** Get the mac address of the station.
+ * \param sta the station.
+ * \return the sta's mac address.
+ */
+mac_t
+cp_sta_get_mac_address(cp_sta_t *sta);
+
+/** Set the associated status of the station.
+ * \param sta the station.
+ * \param associated the association status, true if associated, false
+ * otherwise.
+ */
+void
+cp_sta_set_associated (cp_sta_t *sta, bool associated);
+
+/** Get the association status.
+ * \param sta the station.
+ * \return the association status.
+ *
+ * This function will return true if the station is associated, false
+ * otherwise.
+ */
+bool
+cp_sta_is_associated (cp_sta_t *sta);
+
+/** Set the CCo status of the station.
+ * \param sta the station.
+ * \param cco the cco status, true if the sta is cco, false otherwise.
+ */
+void
+cp_sta_set_cco_status (cp_sta_t *sta, bool cco);
+
+/** Get the station CCo's status.
+ * \param sta the station.
+ * \return the cco status of the sta.
+ *
+ * This function will return true if the Station is CCo, false otherwise.
+ */
+bool
+cp_sta_is_cco_status (cp_sta_t *sta);
+
+/** Set the PCo status of the station.
+ * \param sta the station.
+ * \param pco the pco status, true if the sta is pco false otherwise.
+ */
+void
+cp_sta_set_pco_status (cp_sta_t *sta, bool pco);
+
+/** Get the PCo status of the station.
+ * \param sta the station.
+ * \return the PCo's station status.
+ *
+ * This will return true if the STA is PCo, false otherwise.
+ */
+bool
+cp_sta_is_pco_status (cp_sta_t *sta);
+
+/** Set the backup CCo status of the station.
+ * \param sta the station.
+ * \param backup_cco the backup cco status.
+ *
+ * This shall set true if the station is backup CCo, false otherwise.
+ */
+void
+cp_sta_set_backup_cco_status (cp_sta_t *sta, bool backup_cco);
+
+/** Get the backup CCo of the station.
+ * \param sta the sta.
+ * \return the sta's backup cco status.
+ *
+ * This will return true if the station is backup cco, false otherwise.
+ */
+bool
+cp_sta_is_backup_cco_status (cp_sta_t *sta);
+
+#endif /* cp2_sta_data_sta_data_h */