- Enabling biochemformatics
description
Transcript of - Enabling biochemformatics
[email protected] ChemAxon UGM 2009
- Enabling biochemformatics
Interfacing to MarvinSketch- the "API-free" solution
Jan Holst JensenCEO, Biochemfusion
[email protected] ChemAxon UGM 2009
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
PLN text
H-QC(1)IC(1)SLYC(3)N-OH.H-A[Gla]LVC(3)GER-OH name="Example protein." id=EXA_PROT
NH
O
NH2O
NH
O
S
NH
O
CH3
C H3
NH
O
S
NH
O
OH
NH
O
CH3
CH3
NH
O
OH
NH
O
S
NH
O
NH2
O
NH
O
CH3
NH
O
OHO
OH
O
NH
O
CH3
CH3
NH
O
CH 3CH3
NH
O
S
NH
O
NH
O
OHO
NH
O
NH
NHNH2
H OH
H OH
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
[email protected] ChemAxon UGM 2009
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
NH
O
NH2O
NH
O
S
NH
O
CH3
C H3
NH
O
S
NH
O
OH
NH
O
CH3
CH3
NH
O
OH
NH
O
S
NH
O
NH2
O
NH
O
CH3
NH
O
OHO
OH
O
NH
O
CH3
CH3
NH
O
CH 3CH3
NH
O
S
NH
O
NH
O
OHO
NH
O
NH
NHNH2
H OH
H OH
[email protected] ChemAxon UGM 2009
Live demo
[email protected] ChemAxon UGM 2009
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
[email protected] ChemAxon UGM 2009
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
[email protected] ChemAxon UGM 2009
Ups and downsPros Cons
Extremely simple concept. Relies on
standard OS conventions instead of
vendor APIs.
May be slow - application startup time
is suffered for each edit operation
Loosely coupled - works with many
editors from different vendors without
custom wrapping
Loosely coupled - no way to intercept
events or customize editor experience
Loosely coupled - more resistant to
versioning issues
Loosely coupled - less control over
versioning
Some editors are less well-behaved
and won't work with this