Main Page   Files   Productions   Problem Spaces   Operators   Goal Hierarchy   Groups   Prod. By Type   Todo   All  


elaborations.soar

common/
     elaborations.soar [src]

Go to the documentation for this file...

00001 echo "\nLoading common/elaborations.soar"
00002 ### Helps in reorder production conditions
00003 multi-attributes dirlr 2 
00004 multi-attributes tank 3 
00005 multi-attributes open 10
00006 multi-attributes square 100
00007 multi-attributes obstacle 12
00008 
00009 ##!
00010 # @group common-elaborations
00011 # 
00012 # Common elaborations
00013 #
00014 
00015 ##!
00016 # @brief Operator application
00017 # 
00018 # Copies action commands from operator 
00019 # (<i>^operator.actions</i>) to the output link.
00020 #
00021 # @problem-space tanksoar chase attack wander
00022 # @type application
00023 # @ingroup common-elaborations
00024 sp {apply*operator*create-action-command
00025    (state <s> ^operator <o>
00026               ^io.output-link <ol>)
00027    (<o> ^actions <act>)
00028    (<act> ^<att> <value>)
00029    (<value> ^<att2> <value2>)
00030 -->
00031    (<ol> ^<att> <value3>)
00032    (<value3> ^<att2> <value2>)}
00033 
00034 ##!
00035 # @brief Removes completed operator actions
00036 # 
00037       doc.append(HTMLgen.Heading(2, title))
00038 # When current operator action is complete 
00039 # (<i>^io.output-link.&lt;att&gt;.status</i> = <b>complete</b>)
00040 # removes it.
00041 #
00042 # @type application
00043 # @ingroup common-elaborations
00044 sp {apply*operator*remove-command
00045    (state <s> ^operator.actions
00046               ^io.output-link <ol>)
00047    (<ol> ^<att> <value>)
00048    (<value> ^status complete)
00049 -->
00050    (<ol> ^<att> <value> -)}
00051 
00052 ##!
00053 # @brief Copies io from superstate
00054 # 
00055 # @type application
00056 # @ingroup common-elaborations
00057 sp {elaborate*state*io
00058    (state <s> ^superstate.io <io>)
00059 -->
00060    (<s> ^io <io>)}
00061 
00062 ##!
00063 # @brief Copies operator name to state
00064 # 
00065 # @type application
00066 # @ingroup common-elaborations
00067 sp {elaborate*state*operator*name
00068    (state <s> ^superstate.operator.name <name>)
00069 -->
00070    (<s> ^name <name>)}

Generated with SoarDoc on Wed Jun 25 18:02:44 2003 by ray