forked from nkundiushuti/beatStation
-
Notifications
You must be signed in to change notification settings - Fork 1
Functionalities
Marius Miron edited this page Jul 10, 2013
·
1 revision
The app has an user management system and a tapping recording system, as well as an ability to run tests on different machines connected in a client-server architecture.
USER MANAGEMENT
- recorded in the data/users.xml folder
- each new user is required to enter the name, then a new ID is generated based on the name(ex: john doe - jd1 - the first user with the jd initials), plus an unique index id for each user.
- an existing user can log-in using the ID
- all the tappings will be stored in the data directory, in filenames corresponding to the user id, e.g. jd1.xml
TAP RECORDING
- once logged an user can listen to a song with PLAY, move to the next song with NEXT
- tappings are recorded in a vector for each song
- an user can always quit pressing QUIT button
- tappings are saved in an xml named with the user's ID each time an user hits quit or he finishes the tapping
- instructions are displayed with the INSTRUCTIONS button
- volume can be adjusted with the VOL slider
- the percentage played from a song can be seen in the rotary slider POS
CLIENT - SERVER ARCHITECTURE
- an user can log-in with the same id on the server and all clients machines
- by default, an app runs as a server if not changed from the settings.xml (isClient=1)
- if server, all users are stored on the users.xml file
- if client, the authentication happens on the server machine
- the server must be started in order for the clients to connect and authentication to take place
- tappings are stored locally for clients and server