## Subtask within processing module > Develop module that does processing for whiteboard application ### Tasks * Create the object for data received from UI on below operations. * Draw random curve using brush * Draw shape (line segment, circle, square and rectangle) * Erase * Provide API for performing each of the given operations on selected objects from UI. * Delete an object * Rotate an object (in multiples of 90 degree) * Color-change * Deserialisation and serialisation of objects to be sent and received from server. * Perform the below operation given the received object. (server/client) * Delete an object * Rotate an object * Color-change * Process and pass the changes to UI for display. (client) * Provide an API to return username for selected pixels. (client) * Provide an API to reset the board. (client) * Persistence support on the central server. (optional) * Implement undo-redo and pass information to server. (client) * Do server side processing which includes: * Spwan a thread for a new board server and pass board objects to new user. * Broadcasting the messages received from the clients * Perform processing related to whiteboard objects received from other clients * Write Main file for processing on client side, including request from UI, passing changes to UI. * Review and Testing ### Tasks Allotmemt #### Ahmed Zaheer Dadarkar * Deserialisation and serialisation of objects to be sent and received from server. * Handle processing related to drawing standard shapes (line segment, circle, square, rectangle). * Provide an API that returns tag for each object. * Review processing related to Undo-Redo. #### Devansh Singh Rathore * Handle processing related to below operations: * Change color of object * Rotate object (in multiples of 90 degree) * Extend the rotate option for an angles (optional) * Review Server Processing. #### Himanshu Jain * Do server side processing which includes: * Spwan a thread for a new board server and pass board objects to new user. * Broadcasting the messages received from the clients * Perform processing related to whiteboard objects received from other clients * Write Main file for processing on client side, including request from UI, passing changes to UI. * Persistence support on the central server. (optional) * Review processing related to Draw, Erase and Reset. #### Rakesh Kumar * Handle all operations related to undo-redo on client side. * Review processing related to deserialisation & serialisation, draw standard shape, tag object. #### Satchit Desai * Handle processing related to below operations: * Draw random curve using brush * Erase * Provide API to clear the work done by a particular user * Review processing related to select & delete. #### Sakshi Rathore (Team lead) * Testing * Review #### Shruti Umat * Handle processing related to below operations: * Select an object * Delete an object * Review processing related to color change and rotate.