Commit Graph

10 Commits

Author SHA1 Message Date
Jonathan Hui 1eabda6a08 Change top-level namespace from 'Thread' to 'ot'. (#1664) 2017-04-27 22:29:05 -07:00
Abtin Keshavarzian d0cf21e3ba PriorityQueue and MessagePool::Iterator and their unit-test (#1096)
This commit contains the following:

- It adds methods to `Message` to assign a priority level to messages.
  Currently there are four priority levels: High, Medium, Low, VeryLow
  but this is easily changeable.

- It introduces a new class `PriorityQueue` which implements a FIFO queue
  for storing messages based on their priority level in addition to oder
  in which they are added.
  If the priority level of an already queued message in a `PriorityQueue`
  is changed, the associated queue will automatically move the message
  within the queue based on its new priority level.
  Internally the implementation uses a circular doubly linked-list with
  an array of tail pointers associated with different priority levels.

- It adds new methods and an `Iterator` class  in `MessagePool` to access
  the priority queue where all allocated and queued messages from this
  pool are stored.  The `Iterator` class allows bi-directional iteration
  through the list (from highest priority to lowest or reverse).

- This commit also contain detailed unit-test for all the newly added
  features/methods.
2016-12-21 13:50:57 -08:00
Abtin Keshavarzian 9d3bd7802b Update the MessageQueue and add unit test for it. (#1089)
This commit makes the following changes:

- It adds a unit test for testing different `MessageQueue` operations.

- It modifies how the `MessageQueue` determines the lists (the `kListAll`
  is maintained by the message pool and the `kListInterface` is accessed
  from the `MessageQueue` associated with the list).

- It modifies the underlying list implementation to use a circular doubly
  linked-list.
2016-12-20 08:46:58 -08:00
Nick Banks 55e17533b9 Fix otNetifAddress declaration to work between C & C++ (#1037)
* Fix otNetifAddress declaration to work between C & C++
2016-12-05 16:23:30 -08:00
Jonathan Hui a319791b70 Enable fuzz testing. (#945) 2016-11-10 04:39:29 +08:00
Nick Banks 82e85a7300 Some Very Simple Fuzz Testing (#901)
* Add initial 'dump' fuzzing for radio receive.
2016-11-04 14:53:07 -07:00
pvanhorn 85fb7a451c Remove otPlatFlash API's and move settings from core to examples. (#889)
* Remove otPlatFlash API's and move settings from core to examples.
2016-10-28 18:42:19 -07:00
Lu Wang 8468ffdb77 Settings Driver (#775)
* Settings Driver
2016-10-16 21:54:10 -07:00
Nick Banks 2e64d682ea Add build and test support for NCP on Windows platform. (#740) 2016-10-04 08:40:49 -07:00
Nick Banks 25cea9414b Windows Unit Test Support (#629)
Window Unit Test Support
2016-09-20 18:11:19 -07:00