This is not beyond the means of an intermediate level C/C++
programmer...but the learning curve could be steep. I haven't looked,
but I would bet that if you did - there's probably a god deal of
information and source code examples out there that could give you hints
and get you started.
Yes, this is just me pinging around to get lucky
JB