Authoring tool comprising nested state machines for use in a computer system
First Claim
1. An apparatus for authoring nested graphic state machines, wherein said apparatus has a processor and at least one storage medium, said apparatus comprising:
- a state machine module for creating a plurality of nested graphic state machines, each graphic state machine representing one or more states of an arbitrary graphic object, wherein at least a portion of said state machine module is stored in said at least one storage medium, and wherein each state machine has one or more arbitrarily arranged states and one or more transitions with each transition interconnecting a first state to a second state, and wherein each state machine has a full view associated to it and each state has a full view associated to it thereby allowing said state machine module to create at least one sub-state machine within a first state machine by containing the full view of the second state machine within the full view of the first state machine; and
a user interface module capable of interacting with said state machine module, wherein said user interface module displays a full view of a state machine and receives user input, wherein said user input can activate a sub-state machine nested within the full view of the state machine being displayed, and wherein said activating causes a full view of the state within the activated sub-state machine to be displayed.
1 Assignment
0 Petitions
Accused Products
Abstract
According to the invention, an authoring tool comprises at least one nestable graphic state and transition machine, hereinafter referred to as a "state machine", each state machine comprising one or more states and zero or more transitions, each transition interconnecting a first state, known as the "from-- state", with a second state, known as the "to-- state". The first and second states can be the same state or different states. For each state in the plurality of states there can be any number of transitions, including zero, emanating therefrom and directed thereto. Each state machine has a state designated as its "current state" which changes in response to users actions or other events. Each state machine also has an initial state which is the state that is designated as the current state when the multimedia title is launched. The authoring tool allows an author to view a state machine simultaneously in several different formats, providing a full view and a map view. State machines can be nested, i.e. a state machine can be contained by another state machine. Preferably, separate user and author views are provided so that an author can manipulate a multimedia product and simultaneously observe the effect such manipulation has on the multimedia product from the user'"'"'s point of view. Preferably, a plurality of modes are provided, each mode being geared toward particular functionality within the invention and a mechanism is provided so that a user of the invention can selectively switch between modes.
-
Citations
41 Claims
-
1. An apparatus for authoring nested graphic state machines, wherein said apparatus has a processor and at least one storage medium, said apparatus comprising:
-
a state machine module for creating a plurality of nested graphic state machines, each graphic state machine representing one or more states of an arbitrary graphic object, wherein at least a portion of said state machine module is stored in said at least one storage medium, and wherein each state machine has one or more arbitrarily arranged states and one or more transitions with each transition interconnecting a first state to a second state, and wherein each state machine has a full view associated to it and each state has a full view associated to it thereby allowing said state machine module to create at least one sub-state machine within a first state machine by containing the full view of the second state machine within the full view of the first state machine; and a user interface module capable of interacting with said state machine module, wherein said user interface module displays a full view of a state machine and receives user input, wherein said user input can activate a sub-state machine nested within the full view of the state machine being displayed, and wherein said activating causes a full view of the state within the activated sub-state machine to be displayed. - View Dependent Claims (2)
-
-
3. An apparatus for authoring nested graphic state machines, wherein a graphic state machine represents one or more states of an arbitrary graphic object, wherein said apparatus has a processor and at least one storage medium, said apparatus comprising:
-
a state machine module for creating a plurality of nested graphic state machines, wherein at least a portion of said state machine module is stored in said at least one storage medium, and wherein each state machine has one or more arbitrarily arranged states and one or more transitions with each transition interconnecting a first state to a second state, and wherein each state machine has a full view associated to it and each state has a full view associated to it thereby allowing said state machine module to create at least one sub-state machine within a first state machine by containing the full view of the second state machine within the full view of the first state machine; and a user interface module capable of interacting with said state machine module, wherein said user interface module displays a full view of a state machine and receives user input, wherein said user input can activate a sub-state machine nested within the full view of the state machine being displayed, and wherein said activating causes a full view of the state within the activated sub-state machine to be displayed;
wherein the user interface module further displays a user interface having;a state machine map view comprising graphic representations of each state included in a state machine; a separate and distinct user'"'"'s view, displayed simultaneously with said state machine map, said user'"'"'s view displaying a state machine as it would appear to a user when the nested state machine being authored is executed in a computer system, wherein when an object in the user'"'"'s view window is activated the result is substantially the same as the result that would occur when the nested state machine being authored is executed separately from the authoring apparatus in a computer system; and a separate author'"'"'s view, displayed simultaneously with said state machine map, said author'"'"'s view displaying a state machine corresponding to the state machine displayed in the user'"'"'s window, wherein when an object in the author'"'"'s view window is activated the activating results in selecting the object so that it can be manipulated without causing the result that would occur when the nested state machine being authored is executed in a computer system.
-
-
4. An apparatus for authoring nested graphic state machines, said apparatus having a processor and at least one storage medium, said apparatus comprising:
-
at least one nested graphic state machine, each graphic state machine representing one or more states of an arbitrary graphic object, said state machine having one or more states and one or more transitions associated therewith, wherein each transition interconnects a first state to a second state, wherein the first state and the second state are the same or different states and can be arbitrarily arranged, and wherein each transition has an associated trigger whereby an occurrence of a trigger causes a transition from the first state to the second state; state machine creation means for creating said at least one nested graphic state machine; state machine deletion means for deleting said at least one nested graphic state machine; state machine editing means for editing said at least one nested graphic state machine; state machine nesting means for nesting a first state machine within a second state machine; state machine creation means for creating a state within a state machine, said state creation means adding said created state to the state machine; state deletion means for deleting a state within a state machine; transition creation means for creating a transition between a first and a second state machine, said transition creation means adding said created transition to the state machine; transition deleting means for deleting a transition from a state machine; transition editing means for editing a transition in a state machine; and display means for displaying a graphic representation of a state machine. - View Dependent Claims (5)
-
-
6. An apparatus for authoring nested graphic state machines, wherein a graphic state machine represents one or more states of an arbitrary graphic object, said apparatus having a processor and at least one storage medium, said apparatus comprising:
-
at least one nested graphic state machine, said state machine having one or more states and one or more transitions associated therewith, wherein each transition interconnects a first state to a second state, wherein the first state and the second state are the same or different states and can be arbitrarily arranged, and wherein each transition has an associated trigger whereby an occurrence of a trigger causes a transition from the first state to the second state; state machine creation means for creating said at least one nested graphic state machine; state machine deletion means for deleting said at least one nested graphic state machine; state machine editing means for editing said at least one nested graphic state machine; state machine nesting means for nesting a first state machine within a second state machine; state machine creation means for creating a state within a state machine, said state creation means adding said created state to the state machine; state deletion means for deleting a state within a state machine; transition creation means for creating a transition between a first and a second state machine, said transition creation means adding said created transition to the state machine; transition deleting means for deleting a transition from a state machine; transition editing means for editing a transition in a state machine; and display means for displaying a graphic representation of a state machine, the display means simultaneously displaying a full view of a state in the state machine and a map of the state machine, the map containing a map representation of each state in the state machine, the full view and the map representation being displayed as separate and distinct views;
wherein said apparatus has at least a user mode and an author mode such that a full view of a state in the state machine and a map of the state machine are simultaneously displayed only when said apparatus is in said author mode. - View Dependent Claims (7)
-
-
8. An apparatus for authoring nested graphic state machines, wherein a graphic state machine represents one or more states of an arbitrary graphic object, said apparatus having a processor and at least one storage medium, said apparatus comprising:
-
at least one nested graphic state machine, said state machine having one or more states and one or more transitions associated therewith, wherein each transition interconnects a first state to a second state, wherein the first state and the second state are the same or different states and can be arbitrarily arranged, and wherein each transition has an associated trigger whereby an occurrence of a trigger causes a transition from the first state to the second state; state machine creation means for creating said at least one nested graphic state machine; state machine deletion means for deleting said at least one nested graphic state machine; state machine editing means for editing said at least one nested graphic state machine; state machine nesting means for nesting a first state machine within a second state machine; state machine creation means for creating a state within a state machine, said state creation means adding said created state to the state machine; state deletion means for deleting a state within a state machine; transition creation means for creating a transition between a first and a second state machine, said transition creation means adding said created transition to the state machine; transition deleting means for deleting a transition from a state machine; transition editing means for editing a transition in a state machine; and display means for displaying a graphic representation of a state machine;
wherein said apparatus has at least an author mode and a user mode, such that when said apparatus is in said author mode the contents of the state machine can be edited and transitions can be triggered, said apparatus further comprising;user interface means for receiving user input; and mode selecting means for selectively switching between modes, said mode selecting means switching modes in response to user input received from said user interface means.
-
-
9. A method for nesting a second graphic state machine within a first graphic state machine, the first and second graphic state machines being displayed on a computer system having a processor and at least one storage medium, said method comprising the steps of:
-
defining a first state machine and a second state machine, each state machine having a full view, each of the first state machine and the second state machine representing one or more states of an arbitrary graphic object;
defining one or more states for each state machine, each state having a full view, wherein each state can reference one or more state machines; andproviding in a state of the first state machine a reference to the second state machine, wherein the full view of the second state machine is contained within the full view of the first state machine.
-
-
10. An apparatus for authoring at least one nested graphic state machine, wherein each state machine has one or more states and one or more transitions associated therewith, said apparatus comprising a processor and at least one storage medium for storing at least one state machine data structure, each state machine data structure of said at least one state machine data structure corresponding to a state machine and comprising:
-
a states field, said states field arranged to reference the one or more states in the corresponding graphic state machine, each state machine represents one or more state of an arbitrary graphic object; a transitions field, said transitions field referencing the one or more transitions in the corresponding state machine; an initial state field specifying a starting state of the state machine; and a current state field specifying a state in which the state machine is currently being displayed in the user'"'"'s vie window. - View Dependent Claims (11, 12)
-
-
13. A method for authoring at least one nested graphic state machine on a computer system, the computer system having a processor and a storage medium, wherein each state machine has one or more states and one or more transitions associated therewith, said method comprising the computer implemented steps of:
-
determining whether a state of the at least one graphic state machine is to operated on, the at least one graphic state machine representing one or more states of an arbitrary graphic object; determining whether a transition is to be operated on; determining whether a state machine is to be operated on; if a state is to be operated on, determining the operation to be performed and performing the operation accordingly; if a transition is to be operated on, determining the operation to be performed and performing the operation accordingly; and if a state machine is to be operated on, determining the operation to be performed and performing the operation accordingly. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method for authoring at least one nested graphic state machine on a computer system, wherein a graphic state machine represents one or more states of an arbitrary graphic object, the computer system having a processor and a storage medium, wherein each state machine has one or more states and one or more transitions associated therewith, said method comprising the computer implemented steps of:
-
determining whether a state is to operated on; determining whether a transition is to be operated on; determining whether a state machine is to be operated on; if a state is to be operated on, determining the operation to be performed and performing the operation accordingly, wherein at least four operations can be performed on a state, the four operations including; creating a new state;
moving a state;deleting a state; and editing a state; if a transition is to be operated on, determining the operation to be performed and performing the operation accordingly; and if a state machine is to be operated on, determining the operation to be performed and performing the operation accordingly, wherein the step of editing a state comprises the steps of; determining whether graphics are to be imported into the state or whether text within the state is to be edited; if graphics are to be imported, then; designating the graphics to be imported; and associated the graphics with the state; if text within the state is to be edited, then; designating the text to be edited; and updating an entry in a data structure identifying the edited text.
-
-
29. An apparatus for authoring multimedia having nested graphic state machines, wherein said apparatus has a processor and at least one storage medium, said apparatus comprising;
-
a state machine module for creating a plurality of nested graphic state machines in multimedia, each graphic state machine representing one or more states of an arbitrary graphic object, wherein at least a portion of said state machine module is stored in said at least one storage medium, and where each state machine has one or more arbitrarily arranged states and one or more transitions with each transition interconnecting a first state to a second state, and wherein each state machine has a full view associated to it and each state has a full view associated to it thereby allowing said state machine module to create at least one sub-state machine by nesting a second state machine within a first state machine by containing the full view of the second state machine within the full view of the first state machine; and a user interface module capable of interacting with said state machine module, wherein state user interface module displays a full view of a state machine and receives user input, wherein said user input can activate a sub-state machine nested within the full view of the state machine being displayed, and wherein said activating causes a full view of a state within the activated substate machine to be displayed.
-
-
30. An apparatus for authoring multimedia having nested graphic state machines, said apparatus having a processor and at least one storage medium, said apparatus comprising:
-
at least one nested graphic state machine in the multimedia, the at least one graphic state machine representing one or more states of an arbitrary graphic object, said state machine having one or more states and one or more transitions associated therewith, wherein each transition interconnects a first state to a second state, where the first state and the second state are the same or different states and can be arbitrarily arranged, and wherein each transition has an associated trigger whereby an occurrence of a trigger causes a transition from the first state to the second state; state machine creation means for creating said at least one nested graphic state machine; state machine deletion means for deleting said at least one nested graphic state machine; state machine editing means for editing said at least one nested graphic state machine; state machine nesting means for nesting a first state machine within a second state machine; state machine creation means for creating a state within a state machine, said state creation means adding said created state to the state machine; state deletion means for deleting a state from a state machine; state editing means for editing a state within a state machine; transition creation means for creating a transition between a first and a second state in a state machine, said transition creation means adding said created transition to the state machine; transition deleting means for deleting a transition from a state machine; transition editing means for editing a transition in a state machine; and display means for displaying a graphic representation of a state machine.
-
-
31. A method for nesting a second graphic state machine within a first graphic state machine in multimedia, the first and second graphic state machines being displayed on a computer system having a processor and at least one storage medium, said method comprising the steps of:
-
defining a first state machine and a second state machine in multimedia, each state machine having a full view, each of the first and second graphic state machines representing one or more states of an arbitrary graphic object; defining one or more states for each state machine, each state having a full view, wherein each state can reference one or more state machines; and providing in a state of the first state machine a reference to the second state machine, wherein the full view of the second state machine is contained within the full view of the first state machine.
-
-
32. A method for authoring multimedia having at least one nested graphic state machine on a computer system, the computer system having a processor and a storage medium, wherein each state machine has one or more states and one or more transitions associated therewith, said method comprising the computer-implemented steps of:
-
determining whether a state of the at least one nested graphic state machine is to be operated on, the at least one graphic state machine representing one or more states of an arbitrary graphic object; determining whether a transition is to operated on; determining whether a state machine is to be operated on; if a state is to be operated on, determining the operation to be performed and performing the operation accordingly; if a transition is to be operated on, determining the operation to be performed and performing the operation accordingly; and if a state machine is to be operated on, determining the operation to be performed and performing the operation accordingly.
-
-
33. A computer-readable medium having stored thereon a state machine data structure for use in authoring at least on nested graphic state machine, wherein each state machine has one or more states and one or more transitions associated therewith, said state machine data structure comprising:
-
a states field, said states field arranged to reference the one or more states in the corresponding state machine, the at least one graphic state machine representing one or more states of an arbitrary graphic object; a transitions field, said transitions field referencing the one or more transitions in the corresponding state machine; an initial state field specifying a starting state of the state machine; and a current state field specifying a state in which the state machine is currently being displayed in the user'"'"'s view window. - View Dependent Claims (34, 35)
-
-
36. A method for authoring nested graphic state machines in a computer system having a processor connected to a storage medium, each graphic state machine referencing one or more states of an arbitrary graphic object, said method comprising the steps of:
-
displaying a map view containing a graphical display of each state of a graphical state machine and indicating transitions among said each state; and displaying a separate and distinct user'"'"'s view and a separate and distinct author'"'"'s view, wherein said user'"'"'s view and author'"'"'s view are displayed simultaneously, wherein said user'"'"'s view and author'"'"'s view display a same state of the graphical state machine and wherein user input in said user'"'"'s view triggers transitions in the graphical state machine, while user input in said author'"'"'s view causes the displayed same state to be edited and wherein said user'"'"'s view and author'"'"'s view are synchronized such that as the display changes in said author'"'"'s view, said user'"'"'s view is updated to reflect the changes. - View Dependent Claims (37)
-
-
38. A computer-readable medium having stored thereon instructions for causing a computer system to perform the following steps:
-
displaying a map view containing a graphical display of each state of a graphical state machine and indicating transitions among said each state, each graphical state machine representing one or more states of an arbitrary graphical object; and displaying a separate and distinct user'"'"'s view and a separate and distinct author'"'"'s view, wherein said user'"'"'s view and author'"'"'s view are displayed simultaneously, wherein said user'"'"'s view and author'"'"'s view display a same state of the graphical state machine and wherein user input in said user'"'"'s view triggers transitions in the graphical state machine, while user input in said author'"'"'s view causes the displayed same state to be edited and wherein said user'"'"'s view and author'"'"'s view are synchronized such that as the display changes in said author'"'"'s view, said user'"'"'s view is updated to reflect the changes. - View Dependent Claims (39)
-
-
40. An apparatus for authoring a graphic state machine, wherein said apparatus has a processor and at least one storage medium, said apparatus comprising:
-
a state machine module for creating the graphic state machine representing one or more states of an arbitrary graphic object, at least a portion of said state machine module being stored in the at least one storage medium, and wherein each state machine has one or more arbitrarily arranged states and one or more transitions with each transition interconnecting a first state to a second state; and a user interface module capable of interacting with said state machine module, the user interface module capable of displaying a full view of a state machine and receiving user input, the user interface module further displaying a user interface capable of having; a separate and distinct user'"'"'s view, displayed simultaneously with said state machine map, said user'"'"'s view displaying a state machine as it would appear to a user when the nested state machine being authored is executed in a computer system, wherein when an object in the user'"'"'s view window is activated the result is substantially the same as the result that would occur when the nested state machine being authored is executed separately from the authoring apparatus in a computer system; and a separate author'"'"'s view, displayed simultaneously with said state machine map, said author'"'"'s view displaying a state machine corresponding to the state machine displayed in the user'"'"'s window, wherein when an object in the author'"'"'s view window is activated the activating results in selecting the object so that it can be manipulated without causing the result that would occur when the state machine being authored is executed in a computer system. - View Dependent Claims (41)
-
Specification