X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=Robust%2Fsrc%2FAnalysis%2FTaskStateAnalysis%2FTaskAnalysisAlgorithm;fp=Robust%2Fsrc%2FAnalysis%2FTaskStateAnalysis%2FTaskAnalysisAlgorithm;h=0000000000000000000000000000000000000000;hb=refs%2Ftags%2Fbuildscript;hp=ceb996c7819e217cfba842d093d55845027aa80e;hpb=b9df1caacff3dbe5959bc12e0e6ba46500fcd3e2;p=IRC.git diff --git a/Robust/src/Analysis/TaskStateAnalysis/TaskAnalysisAlgorithm b/Robust/src/Analysis/TaskStateAnalysis/TaskAnalysisAlgorithm deleted file mode 100644 index ceb996c7..00000000 --- a/Robust/src/Analysis/TaskStateAnalysis/TaskAnalysisAlgorithm +++ /dev/null @@ -1,50 +0,0 @@ -Task Analysis: - -Algorithm: - - - -1. Obtain the flags for each class in the program(Incase, a class has -a super class, the super's flags, if any, are included in the list of -flags for the class) - -2. Create a new flagstate for the StartupObject class with the -initialstate flag set to true. Append this flagstate to the queue, -QMAIN. - -3. Pop the head of QMAIN and use this flagstate FS to evaluate which -task triggers on this. - -4. Add all runtime transitions (external flag changes) from FS to -QMAIN and ADJLIST(as edges from FS) ensuring that the new states don't -exist in QMAIN. - -5. Iterate through the list of tasks using FS. - -6. If a task is triggered, - - a. If FS satisfies more than one parameter of the task, throw -an error stating that this is an illegal operation. - - b. If 6a is not true, then add a transition for this task to -FS using step 7. Before performing step 7, make sure that the task -doesn't already exist as a transition to FS. Keep track of the temp -(as TEMP) whose flags form the triggering flagstate. - -7. Search through the FFANS in this task: - - a. For NewObject node, - - i. If the new object is of a class which has both -types of flags, create the new flagstate and append to QMAIN. Set its -set of transitions to the empty set. - - b. For the task exit node, apply the flag changes to the -tempflag pairs corresponding to TEMP and create the new flagstate. -Add this state along with the task as an Edge to FS in the FS -transition set. Add the state to QMAIN. - - c. For the PRE node, throw an error stating that this type of -node isn't supported anymore in Bristlecone. - -8. Repeat steps 3-7 until QMAIN is empty.