X-Git-Url: https://oss.titaniummirror.com/gitweb/?a=blobdiff_plain;f=doc%2Ftxt%2Ftep106.txt;h=4c9d1e5deb61d3e50df58ec4319aebb6b7ae79da;hb=337d0b13acf569c2640b3ed7b7f5c7cec35d7ddd;hp=f84f0c4fa0bb80a291f15e134be96dcc312b4647;hpb=1a329382c4f4556fd52d85f4e3f4a67e54911682;p=tinyos-2.x.git diff --git a/doc/txt/tep106.txt b/doc/txt/tep106.txt index f84f0c4f..4c9d1e5d 100644 --- a/doc/txt/tep106.txt +++ b/doc/txt/tep106.txt @@ -351,16 +351,21 @@ For a module to have an earliest deadline first task, it uses the TaskEdf interface. Its configuration SHOULD wire it to TinySchedulerC. The key used for task unique identifiers MUST be "TinySchedulerC.TaskInterface", where *TaskInterface* is the name of the new task interface as presented -by the scheduler. For example, the module SomethingP requires two EDF -tasks:: +by the scheduler. A common way to make sure a consistent string is used +is to #define it. For example, TaskEdf.nc might include:: + +#define UQ_TASK_EDF "TinySchedulerC.TaskEdf" +In this example, the module SomethingP requires two EDF +tasks:: + configuration SomethingC { ... } implementation { components SomethingP, TinySchedulerC; - SomethingP.SendTask -> TinySchedulerC.TaskEdf["TinySchedulerC.TaskEdf"]; - SomethingP.SenseTask -> TinySchedulerC.TaskEdf["TinySchedulerC.TaskEdf"]; + SomethingP.SendTask -> TinySchedulerC.TaskEdf[unique(UQ_TASK_EDF)]; + SomethingP.SenseTask -> TinySchedulerC.TaskEdf[unique(UQ_TASK_EDF)]; } The module SomethingP also has a basic task. The nesC compiler