I think Albert was talking about a “glue” layer for quantum io, not for “regular” input. Regular input is probably best handled through Open Babel, since that already handles bond perception, typing, etc.
Right now, Avogadro v1 and v2 have separate code for reading basis set and MO information from various formats. Instead, such information (which is only performed when computing orbitals, etc) could be handled through a python call and cclib parsing.
I’m very much in favor of such an approach, since cclib handles a greater variety of quantum data and a greater variety of formats than Avogadro does presently (e.g., MO symmetries, energy scans).
As far as CP2K, Quantum Espresso and the like, I think these would require some cclib support for periodic boundary conditions. I think there was also some push on the solid-state side to use XCrysDens format (http://www.xcrysden.org/doc/XSF.html http://www.xcrysden.org/doc/XSF.html) as something like Molden format in molecular chemistry.
Would good project be to re-wire Avogadro to use cclib instead of relying on the quantumio in Avogadro2? I’m very much in favor of adding visualization capabilities for QuantumEspresso and CP2K.
You don’t need to rewire, the Open Babel plugin reuses all of the
readers/writers advertised. That pattern could be used to reuse the
cclib readers/writers, offering the option of what reader to use if
there is more than one. I think it would be great to add that
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE