*
* - Revision -------------------------------------------------------------
* $Date$
- * @author Torsten Halbhuebner <hhuebner.tu-berlin.de>
+ * @author Torsten Halbhuebner <hhuebner@tkn.tu-berlin.de>
+ * @author Jan Hauer <hauer@tkn.tu-berlin.de>
* ========================================================================
*/
*/
-typedef struct ieee154_PIB_t {
+typedef struct ieee154_PIB {
- /**************/
- /* bool types */
- /**************/
+ /** bool types */
// 0x41
ieee154_macAssociationPermit_t macAssociationPermit;
ieee154_macAssociatedPANCoord_t macAssociatedPANCoord;
// 0x5D
ieee154_macSecurityEnabled_t macSecurityEnabled;
- // no standard attribute
+ // custom attribute
ieee154_macPanCoordinator_t macPanCoordinator;
- /*****************/
- /* uint8_t types */
- /*****************/
+
+ /** uint8_t types */
// 0x00
ieee154_phyCurrentChannel_t phyCurrentChannel;
// 0x5a
ieee154_macResponseWaitTime_t macResponseWaitTime;
- /*****************************/
- /* larger than uint8_t types */
- /*****************************/
+ /** larger than uint8_t types */
// 0x4B
ieee154_macCoordShortAddress_t macCoordShortAddress;
} ieee154_PIB_t;
// PHY PIB default attributes
-
-#define IEEE154_DEFAULT_CURRENTCHANNEL 26
-#define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE0 0x07FFF800
-#define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE1 0
-#define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE2 0
-#define IEEE154_DEFAULT_CCAMODE 3
-#define IEEE154_DEFAULT_CURRENTPAGE 0
-#define IEEE154_DEFAULT_TRANSMITPOWER_dBm 0
+#ifndef IEEE154_DEFAULT_CURRENTCHANNEL
+ #define IEEE154_DEFAULT_CURRENTCHANNEL 26
+#endif
+#ifndef IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE0
+ #define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE0 0x07FFF800
+#endif
+#ifndef IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE1
+ #define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE1 0
+#endif
+#ifndef IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE2
+ #define IEEE154_DEFAULT_CHANNELSSUPPORTED_PAGE2 0
+#endif
+#ifndef IEEE154_DEFAULT_CCAMODE
+ #define IEEE154_DEFAULT_CCAMODE 3
+#endif
+#ifndef IEEE154_DEFAULT_CURRENTPAGE
+ #define IEEE154_DEFAULT_CURRENTPAGE 0
+#endif
+#ifndef IEEE154_DEFAULT_TRANSMITPOWER_dBm
+ #define IEEE154_DEFAULT_TRANSMITPOWER_dBm 0
+#endif
// MAC PIB default attributes
-#define IEEE154_DEFAULT_ASSOCIATEDPANCOORD FALSE
-#define IEEE154_DEFAULT_ASSOCIATIONPERMIT FALSE
-#define IEEE154_DEFAULT_AUTOREQUEST TRUE
-#define IEEE154_DEFAULT_BATTLIFEEXT FALSE
-#define IEEE154_DEFAULT_BATTLIFEEXTPERIODS 6
-#define IEEE154_DEFAULT_BEACONPAYLOAD NULL
-#define IEEE154_DEFAULT_BEACONPAYLOADLENGTH 0
-#define IEEE154_DEFAULT_BEACONORDER 15
-#define IEEE154_DEFAULT_BEACONTXTIME 0
-#define IEEE154_DEFAULT_COORDSHORTADDRESS 0xFFFF
-#define IEEE154_DEFAULT_GTSPERMIT TRUE
-#define IEEE154_DEFAULT_MAXBE 5
-#define IEEE154_DEFAULT_MAXCSMABACKOFFS 4
-#define IEEE154_DEFAULT_MAXFRAMETOTALWAITTIME 2626
-#define IEEE154_DEFAULT_MAXFRAMERETRIES 3
-#define IEEE154_DEFAULT_MINBE 3
-#define IEEE154_DEFAULT_MINLIFSPERIOD 40
-#define IEEE154_DEFAULT_MINSIFSPERIOD 12
-#define IEEE154_DEFAULT_PANID 0xFFFF
-#define IEEE154_DEFAULT_PROMISCUOUSMODE FALSE
-#define IEEE154_DEFAULT_RESPONSEWAITTIME 32
-#define IEEE154_DEFAULT_RXONWHENIDLE FALSE
-#define IEEE154_DEFAULT_SECURITYENABLED FALSE
-#define IEEE154_DEFAULT_SHORTADDRESS 0xFFFF
-
-#define IEEE154_DEFAULT_SUPERFRAMEORDER 15
-#define IEEE154_DEFAULT_SYNCSYMBOLOFFSET 0
-#define IEEE154_DEFAULT_TIMESTAMPSUPPORTED TRUE
-#define IEEE154_DEFAULT_TRANSACTIONPERSISTENCETIME 0x01F4
+#ifndef IEEE154_DEFAULT_ASSOCIATEDPANCOORD
+ #define IEEE154_DEFAULT_ASSOCIATEDPANCOORD FALSE
+#endif
+#ifndef IEEE154_DEFAULT_ASSOCIATIONPERMIT
+ #define IEEE154_DEFAULT_ASSOCIATIONPERMIT FALSE
+#endif
+#ifndef IEEE154_DEFAULT_AUTOREQUEST
+ #define IEEE154_DEFAULT_AUTOREQUEST TRUE
+#endif
+#ifndef IEEE154_DEFAULT_BATTLIFEEXT
+ #define IEEE154_DEFAULT_BATTLIFEEXT FALSE
+#endif
+#ifndef IEEE154_DEFAULT_BATTLIFEEXTPERIODS
+ #define IEEE154_DEFAULT_BATTLIFEEXTPERIODS 6
+#endif
+#ifndef IEEE154_DEFAULT_BEACONPAYLOAD
+ #define IEEE154_DEFAULT_BEACONPAYLOAD NULL
+#endif
+#ifndef IEEE154_DEFAULT_BEACONPAYLOADLENGTH
+ #define IEEE154_DEFAULT_BEACONPAYLOADLENGTH 0
+#endif
+#ifndef IEEE154_DEFAULT_BEACONORDER
+ #define IEEE154_DEFAULT_BEACONORDER 15
+#endif
+#ifndef IEEE154_DEFAULT_BEACONTXTIME
+ #define IEEE154_DEFAULT_BEACONTXTIME 0
+#endif
+#ifndef IEEE154_DEFAULT_COORDSHORTADDRESS
+ #define IEEE154_DEFAULT_COORDSHORTADDRESS 0xFFFF
+#endif
+#ifndef IEEE154_DEFAULT_GTSPERMIT
+ #define IEEE154_DEFAULT_GTSPERMIT TRUE
+#endif
+#ifndef IEEE154_DEFAULT_MAXBE
+ #define IEEE154_DEFAULT_MAXBE 5
+#endif
+#ifndef IEEE154_DEFAULT_MAXCSMABACKOFFS
+ #define IEEE154_DEFAULT_MAXCSMABACKOFFS 4
+#endif
+#ifndef IEEE154_DEFAULT_MAXFRAMETOTALWAITTIME
+ #define IEEE154_DEFAULT_MAXFRAMETOTALWAITTIME 2626
+#endif
+#ifndef IEEE154_DEFAULT_MAXFRAMERETRIES
+ #define IEEE154_DEFAULT_MAXFRAMERETRIES 3
+#endif
+#ifndef IEEE154_DEFAULT_MINBE
+ #define IEEE154_DEFAULT_MINBE 3
+#endif
+#ifndef IEEE154_DEFAULT_MINLIFSPERIOD
+ #define IEEE154_DEFAULT_MINLIFSPERIOD 40
+#endif
+#ifndef IEEE154_DEFAULT_MINSIFSPERIOD
+ #define IEEE154_DEFAULT_MINSIFSPERIOD 12
+#endif
+#ifndef IEEE154_DEFAULT_PANID
+ #define IEEE154_DEFAULT_PANID 0xFFFF
+#endif
+#ifndef IEEE154_DEFAULT_PROMISCUOUSMODE
+ #define IEEE154_DEFAULT_PROMISCUOUSMODE FALSE
+#endif
+#ifndef IEEE154_DEFAULT_RESPONSEWAITTIME
+ #define IEEE154_DEFAULT_RESPONSEWAITTIME 32
+#endif
+#ifndef IEEE154_DEFAULT_RXONWHENIDLE
+ #define IEEE154_DEFAULT_RXONWHENIDLE FALSE
+#endif
+#ifndef IEEE154_DEFAULT_SECURITYENABLED
+ #define IEEE154_DEFAULT_SECURITYENABLED FALSE
+#endif
+#ifndef IEEE154_DEFAULT_SHORTADDRESS
+ #define IEEE154_DEFAULT_SHORTADDRESS 0xFFFF
+#endif
+
+#ifndef IEEE154_DEFAULT_SUPERFRAMEORDER
+ #define IEEE154_DEFAULT_SUPERFRAMEORDER 15
+#endif
+#ifndef IEEE154_DEFAULT_SYNCSYMBOLOFFSET
+ #define IEEE154_DEFAULT_SYNCSYMBOLOFFSET 0
+#endif
+#ifndef IEEE154_DEFAULT_TIMESTAMPSUPPORTED
+ #define IEEE154_DEFAULT_TIMESTAMPSUPPORTED TRUE
+#endif
+#ifndef IEEE154_DEFAULT_TRANSACTIONPERSISTENCETIME
+ #define IEEE154_DEFAULT_TRANSACTIONPERSISTENCETIME 0x01F4
+#endif
#define IEEE154_INVALID_TIMESTAMP (0xffffffff)