Claims
- 1. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said plurality of commands at said interface; (c) said interface queuing said plurality of commands and deleting one of said commands based upon a criteria; and (d) said interface sending a command representative of at least one of said plurality of commands not deleted to a digital command station for execution on said digitally controlled model railroad.
- 2. The method of claim 1, further comprising the steps of providing an acknowledgment to one of said plurality of client programs in response to receiving one of said commands by said interface that said command was successfully validated against permissible actions regarding the interaction between a plurality of objects of said model railroad prior to validating said first command.
- 3. The method of claim 1, further comprising the steps of selectively sending said command from said interface to one of a plurality of digital command stations.
- 4. The method of claim 1, further comprising the step of receiving command station responses representative of the state of said digitally controlled model railroad from said digital command station and validating said responses regarding said interaction.
- 5. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a first command from a first client program to an interface; (b) receiving said first command at said interface; (c) selectively queuing said first command in a command queue based upon a criteria; and (d) said interface selectively sending a second command representative of said first command to one of a plurality of digital command stations.
- 6. The method of claim 5 further comprising the step of providing an acknowledgment to said first client program in response to receiving said first command by said interface prior to validating said first command against permissible actions.
- 7. The method of claim 6 further comprising the step of receiving command station responses from said of digital command station and validating said responses regarding said interaction.
- 8. The method of claim 7 further comprising the step of comparing said command station responses to previous commands sent to said digital command station to determine which said previous commands is corresponds with.
- 9. The method of claim 5 wherein said interface communicates in an asynchronous manner with said first client program while communicating in a synchronous manner with said plurality of digital command stations.
- 10. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs; (b) receiving said commands at said interface; (c) queuing said commands, and deleting one of said commands based upon a criteria; and (d) said interface sending a command representative of one of said plurality of commands to a digital command station.
- 11. The method of claim 10 further comprising the step of providing an acknowledgment to one of said client programs in response to receiving one of said commands by said interface that was successfully validated against permissible actions prior to validating said one of said commands.
- 12. The method of claim 11 further comprising the step of receiving command station responses representative of the state of said digitally controlled model railroad from said digital command station.
- 13. The method of claim 12 further comprising the step of comparing said command station responses to previous commands sent to said digital command station to determine which said previous commands it corresponds with.
- 14. The method of claim 13 further comprising the step of updating a database of the state of said digitally controlled model railroad based upon said receiving command station responses.
- 15. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a first command from a first client program to a first processor; (b) receiving said first command at said first processor; (c) queuing said first command in a command queue that is not a first-in-first-out queue; and (d) said first processor providing an acknowledgment to said first client program indicating that said first command has been validated against permissible actions regarding said model railroad and properly executed prior to execution of commands related to said first command by said digitally controlled model railroad.
- 16. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) said interface queuing said commands; (d) comparing a plurality of said commands to one another to determine if the result of executing said commands would result in no net state change of said model railroad and the execution of one of said first and second commands would result in a net state change of said model railroad; and (e) said interface sending a command representative of one of said commands to a digital command station.
- 17. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a first command from a first client program to an interface; (b) receiving said first command at said interface; (c) comparing said first command against other commands in a command queue to determine if the result of executing said first command and said other commands would result in no net state change of said model railroad; and (d) said interface selectively sending a second command representative of said first command to a digital command station.
- 18. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) comparing a plurality of said commands to one another to determine if the result of executing a plurality of said commands would result in no net state change of said model railroad; and (d) said interface sending a command representative of one of said commands to a digital command station.
- 19. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting commands from a first client program to a first processor; (b) receiving said commands at said first processor; (c) comparing said commands against one another in a command queue to determine if the result of executing a plurality of said commands would result in no net state change of said model railroad; and (d) said first processor providing an acknowledgment to said first client program indicating that one of said commands has been executed.
- 20. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) said interface queuing said commands; (d) comparing said commands to one another to determine if the result of executing a plurality of said commands would result in a net state change of said model railroad that would also result from a single different command; and (e) said interface sending said single different command representative of the net state change of said plurality of commands of step (d) to a digital command station.
- 21. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a command from a first client program to an interface; (b) receiving said command at said interface; (c) comparing said command against other commands in a command queue to determine if the result of executing said first command and at least one other said other commands would result in a net state change of said model railroad that would also result from a single different command; and (d) said interface selectively sending said single different command to a digital command station.
- 22. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) comparing said commands to one another to determine if the result of executing said commands would result in a net state change of said model railroad that would also result from a single different command; and (d) said interface sending said single different command to a digital command station if as a result of said comparing such a single different command exists.
- 23. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) said interface queuing said commands; (d) queuing said commands in a command queue based on a non-first-in-first-out prioritization; and (e) said interface sending a command representative of one of said queued commands to a digital command station based upon said prioritization.
- 24. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) queuing said commands in a command queue based on a non-first-in-first-out prioritization; and (d) said interface sending a command representative of at least one of said queued commands to a digital command station based upon said prioritization.
- 25. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a command from a client program to a processor; (b) receiving said command at said processor; (c) queuing said command in a queue based on a non-first-in-first-out prioritization; and (d) said processor providing an acknowledgment to said client program indicating that said command has been executed by said model railroad.
- 26. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a plurality of commands from a plurality of client programs to an interface; (b) receiving said commands at said interface; (c) said interface queuing said commands; (d) queuing said commands in a command queue having the characteristic that valid commands in said command queue are removed from said command queue without being executed by said model railroad; and (e) said interface sending a command representative of at least one of said queued commands to a digital command station if not said removed.
- 27. A method of operating a digitally controlled model railroad comprising the steps of:(a) transmitting a command from a client program to a processor; (b) receiving said command at said processor; and (c) queuing said command in a queue having the characteristic that valid commands in said queue are removed from said queue without being executed by said model railroad.
Parent Case Info
This is a continuation of U.S. application Ser. No. 09/858,297, filed May 15, 2001 now U.S. Pat. No. 6,494,408, for MODEL TRAIN CONTROL SYSTEM., which is a continuation of U.S. application Ser. No. 09/541,926, filed Apr. 3, 2000, now U.S. Pat. No. 6,270,040 for MODEL TRAIN CONTROL SYSTEM.
US Referenced Citations (16)
Continuations (2)
|
Number |
Date |
Country |
Parent |
09/858297 |
May 2001 |
US |
Child |
10/226040 |
|
US |
Parent |
09/541926 |
Apr 2000 |
US |
Child |
09/858297 |
|
US |