Student Application Template
To fill this in, copy the source text. Please don't rename the template.
This is a suggestion for the kind of information we'll find useful from students in their submissions. Remember -- you're going to be committing to several months' work. The more information and planning you can provide up-front, the more we (and Google!) will have to go on when we're ranking your application. Do not forget adding your submission at SummerOfCode2015/StudentApplications
Name Vimarsh Raina
Contact/Email/IRC nick: firstname.lastname@example.org, nick: vrain
I am a student studying Computer Games Technology at the University Of Abertay Dundee. As a programmer I prefer coding in C++. Using C++ as my primary language has made me adept at object oriented programming and using several object oriented patterns. Having used C++ in conjunction with various types of hardware, software and programming environments & APIs has overall increased my versatility.
Over the years I have mainly focused on engine programming, operating system programming and graphics programming. I have always been interested in engine programming and the low level details surrounding tools and engine development and I have focussed a lot of my time in learning these subjects.
As someone who has worked with graphics, operating systems and games (HID such as Kinect), as well as being experienced with C++ (11), this project is a perfect match for my skills. This project gives me a chance to not only apply my current skills but learn new concepts especially those related to Debian and the Linux architecture.
Project title: Input/Output model for multiple simultaneous users
Enhance and improve MPX support such it it allows other HIDs to be used as pointer with the above.
This would involve working with existing packages as well as new ones, improving upon them and trying to integrate it into the system well enough such that virtually no modifications would be needed by applications to support HIDs. As well as trying to expose the devices well enough to be used individually.
There will be some configuration parameters which can be changed by the user allowing some control over how the device performs within the system.
Functionality such as Left click, Right click, scroll etc will be implemented for Kinect and PSMove. The project will be tested using Kinect and PSMove
Synopsis: Support for HIDs, such that they can be used as (multiple) pointers with applications without any special modifications required.
Benefits to Debian: With new HIDs being readily available it would improve accessibility and allow further expansion with new technologies and methods of interaction.
Deliverables: A package/system which would allow the Kinect/PSMove and possibly any other HID to act as a pointer in the system.
Pre Week 0: Familiarising with basic source code and systems
Week 0: Testing and trying the current implementation and while listing the limitations it poses.
Week 1 to 4: Implement the PSMove controller with the MPX along with testing to fix any bugs
Week 5 to 8:Implement the Kinect controller with the MPX along with testing to fix any bugs
Week 9 to 11: Implement an interface/API such that any other HID can be added without much effort, taking experience from the PSMove and Kinect implementations
Week 12 to 13: Testing, Backlog and additional features along with documentation.
Exams and other commitments: I have no other commitments and expect to work on the project 40 hours a week.
Other summer plans: None
Why Debian?: I have been using Debian for my research project and I was always interested to learn more about Debian. Given my current skill set, this project will give me a chance to not only learn Debian but also contribute to the vast community.
- Are you applying for other projects in SoC? Yes.