80 likes | 171 Views
Interfacing to MarvinSketch - the "API-free" solution. Jan Holst Jensen CEO, Biochemfusion. - Enabling biochemformatics. A need for chemistry ? Yes. PLN text H-QC(1)IC(1)SLYC(3)N-OH. H-A[Gla]LVC(3)GER-OH name="Example protein." id=EXA_PROT. Biochemfusion's Proteax
E N D
Interfacing to MarvinSketch - the "API-free" solution Jan Holst Jensen CEO, Biochemfusion - Enabling biochemformatics
A need for chemistry ? Yes. PLN text H-QC(1)IC(1)SLYC(3)N-OH. H-A[Gla]LVC(3)GER-OH name="Example protein." id=EXA_PROT • Biochemfusion's Proteax • Registration and analysis of modified protein structures • Oracle cartridge + spreadsheet solution (Excel or OpenOffice Calc) • Sequence format transforms • Sequence to chemical structure translation
Mapping sequence to structure • Each residue code mapped to a residue structure • Standard amino acids - built-in • Custom residues - defined by modification database • Stitch resulting residue structures together, add terminals, add crosslinks - done. H-QC(1)IC(1)SLYC(3)N-OH. H-A[Gla]LVC(3)GER-OH
Residue modification database Dbl-click
Normal edit workflow • Write molecule to temporary molfile • Start editor (MarvinSketch.exe) • Passing temporary molfile on command line • Use CreateProcess(), save returned process id • Wait for editor process exit... • ...or temporary file change (editor saved file) • in this case: request editor close (see next slide) • Read molecule back in from temporary file
Cancelling edits • Post WM_CLOSE message to main window of editor process • Main window of editor process is found by • Enumerating all windows • Choosing the first window that belongs to editor process and • is visible, has a title and is not a child window • Probably not fool-proof but is observed to work in general • Rely on editor's normal WM_CLOSE response • Just like an end-user closing the main window