Hi everyone, I am an owner of the Canon in subject. It is not supported by SANE atm, so I'd like to help implementing a driver for it.
Unfortunately I never worked on large projects or commercial quality products, but studying at the university I have a good C++ knowledge including advanced topics like multiple virtual inheritance, exception safe coding... So, I guess SANE gives a common interface in form of a base abstract class and it needs the specific implementations of every scanner. So the operating system just need to know the SANE function and the virtual call system gives the correct commands to the scanner... It is so? Where can I find what I need to start? In the D646U page the chipset is marked with a '?', should I open my scanner and check if the info is correct? And overall, how can I know the commands my scanner understand? Any info is very welcome, please be verbose as you can... Thanks.
