Timer with multiple states and ability transfer time between them.
- Idle state (Menu)
- Preparation time
- Presentation time
- Q&A time
- Large counter (format: "mm:ss" and "ss")
- Easy to customize
- Pause/continue function
- Timer durations can be changed in Competition.Timer/app.config
- In general, if the state is finished earlier the remaining time is transfered to next state (e.g. someone spends 1 out of 5 min for preparation, remaining 4min are transfered to presentation time)
- There are sound notifications when there is 15sec left, and when time's up
- Timer doesn't start immediately. It takes <= 1sec to start.
- Timer doesn't continue immediately. It takes <= 1sec to start.
- No Dependency Injection Container was used
These are all the states and transitions (commands) in Timer.
- Time can be transfered between states using TimeProvider which is injected in state
- All transitions are registered in Rules/Transition
Timer was used on (this list may become outdated):
- Microsoft ImagineCup final (27.3.2014., FESB)
- DUMP Young Programmers Association - Internship competition (2015., DUMP)
Have some questions or want to give a feedback? You can send me a an email ✉️
NOTE: Do you like it? Show it by giving a ⭐️. 🚀