diff options
-rw-r--r-- | TAO/orbsvcs/examples/FaultTolerance/FLARe/DeCoRAM/src/schedulability_check.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/TAO/orbsvcs/examples/FaultTolerance/FLARe/DeCoRAM/src/schedulability_check.cpp b/TAO/orbsvcs/examples/FaultTolerance/FLARe/DeCoRAM/src/schedulability_check.cpp index a33dc390dba..011a885fd1e 100644 --- a/TAO/orbsvcs/examples/FaultTolerance/FLARe/DeCoRAM/src/schedulability_check.cpp +++ b/TAO/orbsvcs/examples/FaultTolerance/FLARe/DeCoRAM/src/schedulability_check.cpp @@ -29,6 +29,18 @@ unsigned int consistency_level = 0; typedef std::map <Processor, FailureAwareWCRT> WCRT_MAP; +class TaskSorter : public std::binary_function <TASK_POSITION, + TASK_POSITION, + bool> +{ +public: + bool operator () (const TASK_POSITION & p1, + const TASK_POSITION & p2) + { + return (extract_rank (p1.second.name) < extract_rank (p2.second.name)); + } +}; + class ScheduleChecker { public: @@ -65,6 +77,15 @@ public: } } + for (REPLICA_GROUPS::iterator rg_it = replica_groups_.begin (); + rg_it != replica_groups_.end (); + ++rg_it) + { + std::sort (rg_it->second.begin (), + rg_it->second.end (), + TaskSorter ()); + } + // fill wcrt_map wcrt_map_.insert (std::pair <Processor, FailureAwareWCRT> ( processor, |