## -*- Mode: python; py-indent-offset: 4; indent-tabs-mode: nil; coding: utf-8; -*- def build(bld): obj = bld.create_ns3_module('wifi', ['network', 'propagation', 'energy', 'spectrum', 'antenna', 'mobility']) obj.source = [ 'model/wifi-utils.cc', 'model/wifi-information-element.cc', 'model/wifi-information-element-vector.cc', 'model/wifi-mode.cc', 'model/ssid.cc', 'model/wifi-phy.cc', 'model/wifi-phy-state-helper.cc', 'model/error-rate-model.cc', 'model/yans-error-rate-model.cc', 'model/nist-error-rate-model.cc', 'model/dsss-error-rate-model.cc', 'model/interference-helper.cc', 'model/yans-wifi-phy.cc', 'model/yans-wifi-channel.cc', 'model/spectrum-wifi-phy.cc', 'model/wifi-spectrum-phy-interface.cc', 'model/wifi-spectrum-signal-parameters.cc', 'model/wifi-phy-header.cc', 'model/wifi-mac-header.cc', 'model/wifi-mac-trailer.cc', 'model/mac-low.cc', 'model/mac-low-transmission-parameters.cc', 'model/wifi-mac-queue.cc', 'model/mac-tx-middle.cc', 'model/mac-rx-middle.cc', 'model/txop.cc', 'model/supported-rates.cc', 'model/capability-information.cc', 'model/status-code.cc', 'model/mgt-headers.cc', 'model/channel-access-manager.cc', 'model/wifi-mac.cc', 'model/regular-wifi-mac.cc', 'model/infrastructure-wifi-mac.cc', 'model/wifi-remote-station-info.cc', 'model/wifi-remote-station-manager.cc', 'model/ap-wifi-mac.cc', 'model/sta-wifi-mac.cc', 'model/adhoc-wifi-mac.cc', 'model/wifi-net-device.cc', 'model/arf-wifi-manager.cc', 'model/aarf-wifi-manager.cc', 'model/ideal-wifi-manager.cc', 'model/constant-rate-wifi-manager.cc', 'model/amrr-wifi-manager.cc', 'model/onoe-wifi-manager.cc', 'model/rraa-wifi-manager.cc', 'model/aarfcd-wifi-manager.cc', 'model/cara-wifi-manager.cc', 'model/minstrel-wifi-manager.cc', 'model/minstrel-ht-wifi-manager.cc', 'model/qos-utils.cc', 'model/qos-txop.cc', 'model/msdu-aggregator.cc', 'model/amsdu-subframe-header.cc', 'model/originator-block-ack-agreement.cc', 'model/ctrl-headers.cc', 'model/qos-blocked-destinations.cc', 'model/block-ack-agreement.cc', 'model/block-ack-manager.cc', 'model/block-ack-cache.cc', 'model/block-ack-window.cc', 'model/snr-tag.cc', 'model/ht-capabilities.cc', 'model/wifi-tx-vector.cc', 'model/parf-wifi-manager.cc', 'model/aparf-wifi-manager.cc', 'model/rrpaa-wifi-manager.cc', 'model/ampdu-subframe-header.cc', 'model/mpdu-aggregator.cc', 'model/ampdu-tag.cc', 'model/wifi-radio-energy-model.cc', 'model/wifi-tx-current-model.cc', 'model/vht-capabilities.cc', 'model/erp-information.cc', 'model/ht-operation.cc', 'model/vht-operation.cc', 'model/dsss-parameter-set.cc', 'model/edca-parameter-set.cc', 'model/he-capabilities.cc', 'model/frame-capture-model.cc', 'model/simple-frame-capture-model.cc', 'model/preamble-detection-model.cc', 'model/threshold-preamble-detection-model.cc', 'model/he-operation.cc', 'model/he-configuration.cc', 'model/extended-capabilities.cc', 'model/cf-parameter-set.cc', 'model/wifi-mac-queue-item.cc', 'model/wifi-psdu.cc', 'model/wifi-ppdu.cc', 'model/ht-configuration.cc', 'model/vht-configuration.cc', 'model/obss-pd-algorithm.cc', 'model/constant-obss-pd-algorithm.cc', 'model/wifi-ack-policy-selector.cc', 'model/constant-wifi-ack-policy-selector.cc', 'helper/wifi-radio-energy-model-helper.cc', 'helper/athstats-helper.cc', 'helper/wifi-helper.cc', 'helper/yans-wifi-helper.cc', 'helper/spectrum-wifi-helper.cc', 'helper/wifi-mac-helper.cc', ] obj_test = bld.create_ns3_module_test_library('wifi') obj_test.source = [ 'test/block-ack-test-suite.cc', 'test/channel-access-manager-test.cc', 'test/tx-duration-test.cc', 'test/power-rate-adaptation-test.cc', 'test/wifi-test.cc', 'test/spectrum-wifi-phy-test.cc', 'test/wifi-aggregation-test.cc', 'test/wifi-error-rate-models-test.cc', 'test/wifi-transmit-mask-test.cc', 'test/wifi-phy-thresholds-test.cc', 'test/wifi-phy-reception-test.cc', 'test/inter-bss-test-suite.cc', ] # Tests encapsulating example programs should be listed here if (bld.env['ENABLE_EXAMPLES']): obj_test.source.extend([ # 'test/wifi-examples-test-suite.cc', ]) headers = bld(features='ns3header') headers.module = 'wifi' headers.source = [ 'model/wifi-utils.h', 'model/wifi-information-element.h', 'model/wifi-information-element-vector.h', 'model/wifi-net-device.h', 'model/wifi-mode.h', 'model/ssid.h', 'model/wifi-preamble.h', 'model/wifi-phy-band.h', 'model/wifi-standards.h', 'model/yans-wifi-phy.h', 'model/spectrum-wifi-phy.h', 'model/yans-wifi-channel.h', 'model/wifi-phy.h', 'model/wifi-spectrum-phy-interface.h', 'model/wifi-spectrum-signal-parameters.h', 'model/interference-helper.h', 'model/wifi-remote-station-info.h', 'model/wifi-remote-station-manager.h', 'model/ap-wifi-mac.h', 'model/sta-wifi-mac.h', 'model/adhoc-wifi-mac.h', 'model/arf-wifi-manager.h', 'model/aarf-wifi-manager.h', 'model/ideal-wifi-manager.h', 'model/constant-rate-wifi-manager.h', 'model/amrr-wifi-manager.h', 'model/onoe-wifi-manager.h', 'model/rraa-wifi-manager.h', 'model/aarfcd-wifi-manager.h', 'model/cara-wifi-manager.h', 'model/minstrel-wifi-manager.h', 'model/minstrel-ht-wifi-manager.h', 'model/wifi-mac.h', 'model/regular-wifi-mac.h', 'model/infrastructure-wifi-mac.h', 'model/supported-rates.h', 'model/error-rate-model.h', 'model/yans-error-rate-model.h', 'model/nist-error-rate-model.h', 'model/dsss-error-rate-model.h', 'model/wifi-mac-queue.h', 'model/txop.h', 'model/wifi-phy-header.h', 'model/wifi-mac-header.h', 'model/wifi-mac-trailer.h', 'model/wifi-phy-state-helper.h', 'model/qos-utils.h', 'model/qos-txop.h', 'model/msdu-aggregator.h', 'model/amsdu-subframe-header.h', 'model/mgt-headers.h', 'model/status-code.h', 'model/capability-information.h', 'model/channel-access-manager.h', 'model/mac-tx-middle.h', 'model/mac-rx-middle.h', 'model/mac-low.h', 'model/mac-low-transmission-parameters.h', 'model/originator-block-ack-agreement.h', 'model/ctrl-headers.h', 'model/block-ack-agreement.h', 'model/block-ack-manager.h', 'model/block-ack-cache.h', 'model/block-ack-window.h', 'model/snr-tag.h', 'model/ht-capabilities.h', 'model/parf-wifi-manager.h', 'model/aparf-wifi-manager.h', 'model/rrpaa-wifi-manager.h', 'model/wifi-tx-vector.h', 'model/ampdu-subframe-header.h', 'model/mpdu-aggregator.h', 'model/ampdu-tag.h', 'model/wifi-radio-energy-model.h', 'model/wifi-tx-current-model.h', 'model/vht-capabilities.h', 'model/erp-information.h', 'model/ht-operation.h', 'model/vht-operation.h', 'model/dsss-parameter-set.h', 'model/edca-parameter-set.h', 'model/he-capabilities.h', 'model/frame-capture-model.h', 'model/simple-frame-capture-model.h', 'model/preamble-detection-model.h', 'model/threshold-preamble-detection-model.h', 'model/qos-blocked-destinations.h', 'model/he-operation.h', 'model/he-configuration.h', 'model/extended-capabilities.h', 'model/cf-parameter-set.h', 'model/wifi-mac-queue-item.h', 'model/wifi-psdu.h', 'model/wifi-ppdu.h', 'model/wifi-phy-state.h', 'model/wifi-phy-listener.h', 'model/block-ack-type.h', 'model/wifi-mpdu-type.h', 'model/ht-configuration.h', 'model/vht-configuration.h', 'model/obss-pd-algorithm.h', 'model/constant-obss-pd-algorithm.h', 'model/wifi-ack-policy-selector.h', 'model/constant-wifi-ack-policy-selector.h', 'model/reference/error-rate-tables.h', 'helper/wifi-radio-energy-model-helper.h', 'helper/athstats-helper.h', 'helper/wifi-helper.h', 'helper/yans-wifi-helper.h', 'helper/spectrum-wifi-helper.h', 'helper/wifi-mac-helper.h', ] if bld.env['ENABLE_GSL']: obj.use.extend(['GSL', 'GSLCBLAS', 'M']) obj_test.use.extend(['GSL', 'GSLCBLAS', 'M']) if (bld.env['ENABLE_EXAMPLES']): bld.recurse('examples') bld.ns3_python_bindings()