I think the original poster is asking if the algorithm described in the attached PDF can be implemented in Mathematica rather than if it can be done in an object oriented programming paradigm (I think he is saying that his advisor is only familiar with OO programming).
Either way, the answer will very likely be "yes". However the PDF is long and detailed and it is probably not likely that someone here will program it for the original poster unless they are already familiar with it. I'd recommend to the original poster to just dive in and start a project of implementing this in Mathematica, learning as he works through it. If he does not feel that he knows enough Mathematica yet to tackle this then reading a book like Paul Wellin's
http://www.amazon.com/Programming-Mathematica-Introduction-Paul-Wellin/dp/1107009464/
wold get him started with learning enough to tackle this.