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

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.

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

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.