#include <stdlib.h>
#include <string.h>
#include "mode.h"
#include "ichinorm.h"
#include "ichierr.h"
#include "bcf_s.h"
Data Structures | |
struct | tagAtPair |
struct | tagDerivAttachment |
struct | tagRing2Chain |
Macros | |
#define | DERIV_BRIDGE_O 0x0001 /* R1-O-R2 => R1-OH + HO-R2 */ |
#define | DERIV_BRIDGE_NH 0x0002 /* R1-NH-R2 amine */ |
#define | DERIV_AMINE_tN 0x0004 /* R1-N(-R2)-R3 tertiary amine */ |
#define | DERIV_RING_O_OUTSIDE_PRECURSOR 0x0008 /* -O- in a ring */ |
#define | DERIV_RING_NH_OUTSIDE_PRECURSOR 0x0010 /* -NH- in a ring */ |
#define | DERIV_X_OXIME 0x0020 /* comment out to disable */ |
#define | DERIV_UNMARK 0x0040 /* unmark the cut */ |
#define | DERIV_DUPLIC 0x0080 /* duplicated disconnection */ |
#define | DERIV_RO_COX 0x0100 /* alcohol derivatives: R-O--C(=O)C[n]F[2n+1] 0<n<4, R-O--C(=O)CH3, R-O--C(=O)-Phenyl */ |
#define | DERIV_RING_DMOX_DEOX_N 0x0200 /* =N- in a ring: /-O--CH2-\ DMOX, DEOX */ |
#define | DERIV_RING_DMOX_DEOX_O 0x0400 /* -O- in a ring: R-C=N--------C<2Me or 2Et */ |
#define | DERIV_RING2_PRRLDD_OUTSIDE_PRECUR 0x0800 /* alcohol derivatives: R(=O)-N<C4H4 5-memb ring Pyrrolidides; replace -N< with -OH */ |
#define | DERIV_RING2_PPRDN_OUTSIDE_PRECUR 0x1000 /* alcohol derivatives: R(=O)-N<C5H5 6-memb ring Piperidines; replace -N< with -OH */ |
#define | DERIV_DANSYL 0x2000 /* alcohol derivatives: R-O--SO2-C10H5-N(CH3)2 => R-OH */ |
#define | DERIV_RING_DMOX_DEOX (DERIV_RING_DMOX_DEOX_O | DERIV_RING_DMOX_DEOX_N) |
#define | DERIV_RING_OUTSIDE_PRECURSOR (DERIV_RING_O_OUTSIDE_PRECURSOR | DERIV_RING_NH_OUTSIDE_PRECURSOR) |
#define | DERIV_RING2_OUTSIDE_PRECUR (DERIV_RING2_PRRLDD_OUTSIDE_PRECUR | DERIV_RING2_PPRDN_OUTSIDE_PRECUR) |
#define | DERIV_AT_LEN 4 |
#define | DERIV_NOT 0x1000 /* cannot be a derivatization agent atom */ |
#define | MAX_AT_DERIV 13 /* max. num of heavy atoms in removed derivatizing agent: RO-C(O)PheF5 */ |
#define | NOT_AT_DERIV 99 /* DERIV_AT::num; rejected as > MAX_AT_DERIV */ |
#define | MIN_AT_LEFT_DERIV 2 /* was 3 before 2013-11-12; min num heavy atoms in derivative precursor = MIN_AT_LEFT_DERIV-1 */ |
#define | NO_ORD_VAL 0x0037 /* not used */ |
#define | CFLAG_MARK_BRANCH 1 /* for main derivative traversal */ |
#define | CFLAG_MARK_BLOCK 2 /* for block detection */ |
#define | CFLAG_MARK_BLOCK_INV ((char)~(CFLAG_MARK_BLOCK)) /* for block detection */ |
#define | COUNT_ALL_NOT_DERIV 1 /* 1=> count ALL atoms that are not in deriv. agents */ |
#define | IS_DA_NUM_LE(DA, I, MX) (((DA)->typ[I] && ((DA)->typ[I] & DERIV_UNEXPADABLE) == (DA)->typ[I]) || (DA)->num[I] <= (MX)) |
#define | OX_RING_SIZE 5 |
#define | PRRLDD_RING_SIZE 5 |
#define | PPRDN_RING_SIZE 6 |
#define | MIN_PRRLDD_PPRDN_RING_SIZE PRRLDD_RING_SIZE |
#define | MAX_PRRLDD_PPRDN_RING_SIZE PPRDN_RING_SIZE |
#define | DERIV_RING DERIV_RING_OUTSIDE_PRECURSOR |
#define | UNDERIV_MAX_NUM 512 /*max. number of records in szUnderivList */ |
#define | UNDERIV_LEN 128 |
#define | UNDERIV_LEN2 128 |
#define | ALLOC_AP |
#define | UNDERIV_LIST_LEN 2048 |
#define | UNDERIV_LIST_LEN2 2048 |
#define | R2C_EMPTY 127 |
Typedefs | |
typedef struct tagAtPair | R2C_ATPAIR |
typedef struct tagDerivAttachment | DERIV_AT |
typedef enum tagDerivId | DerivId |
typedef enum tagDerivBit | DerivBit |
typedef int | BIT_UNDERIV |
typedef struct tagRing2Chain | R2C_AT |
Functions | |
int | MarkRingSystemsInp (inp_ATOM *at, int num_atoms, int start) |
int | mark_arom_bonds (struct tagINCHI_CLOCK *ic, struct tagCANON_GLOBALS *pCG, inp_ATOM *at, int num_atoms) |
void | set_R2C_el_numbers (void) |
int | subtract_DT_from_num_H (int num_atoms, inp_ATOM *at) |
int | add_inp_ATOM (inp_ATOM *at, int len_at, int len_cur, inp_ATOM *add, int len_add) |
int | cmp_r2c_atpair (const void *p1, const void *p2) |
int | has_atom_pair (R2C_ATPAIR *ap, int num_ap, AT_NUMB at1, AT_NUMB at2) |
int | mark_atoms_ap (inp_ATOM *at, AT_NUMB start, R2C_ATPAIR *ap, int num_ap, int num, AT_NUMB cFlags) |
int | UnMarkDisconnectedComponents (ORIG_ATOM_DATA *orig_inp_data) |
int | UnMarkOtherIndicators (inp_ATOM *at, int num_atoms) |
int | UnMarkOneComponent (inp_ATOM *at, int num_atoms) |
int | DisconnectInpAtBond (inp_ATOM *at, AT_NUMB *nOldCompNumber, int iat, int neigh_ord) |
int | ExtractConnectedComponent (inp_ATOM *at, int num_at, int component_number, inp_ATOM *component_at) |
int | UnMarkRingSystemsInp (inp_ATOM *at, int num_atoms) |
int | has_atom_pair_seq (R2C_ATPAIR *ap, int num_ap, AT_NUMB at1, AT_NUMB at2) |
int | mark_atoms_cFlags (inp_ATOM *at, int start, int num, char cFlags) |
int | unmark_atoms_cFlags (inp_ATOM *at, int start, int num, char cFlags, char cInvFlags) |
int | is_C_or_S_DB_O (inp_ATOM *at, int i) |
int | is_C_DB_O (inp_ATOM *at, int i) |
int | is_C_unsat_not_arom (inp_ATOM *at, int i) |
int | is_Aryl (inp_ATOM *at, int outside_point, int attachment_pont) |
int | is_Saturated_C (inp_ATOM *at, int attachment_pont) |
int | is_C_Alk (inp_ATOM *at, int i, char cFlags) |
int | is_Phenyl (inp_ATOM *at, int outside_point, int attachment_point) |
int | is_PentaFluoroPhenyl (inp_ATOM *at, int outside_point, int attachment_point) |
int | is_Methyl (inp_ATOM *at, int attachment_point) |
int | is_Ethyl (inp_ATOM *at, int outside_point, int attachment_point) |
int | is_Methyl_or_Etyl (inp_ATOM *at, int outside_point, int attachment_point) |
int | is_Si_IV (inp_ATOM *at, int i) |
int | is_P_TB_N (inp_ATOM *at, int i) |
int | is_DERIV_RING2_PRRLDD_PPRDN (inp_ATOM *at, int cur_atom, int from_ord, DERIV_AT *da, DERIV_AT *da1) |
int | check_arom_chain (inp_ATOM *at, int first, int first_from, int last, int len) |
int | is_Dansyl (inp_ATOM *at, int cur_atom, int from_ord, DERIV_AT *da, DERIV_AT *da1) |
int | is_possibly_deriv_neigh (inp_ATOM *at, int iat, int iord, int type, char cFlags) |
int | get_traversed_deriv_type (inp_ATOM *at, DERIV_AT *da, int k, DERIV_AT *da1, char cFlags) |
int | add_to_da (DERIV_AT *da, DERIV_AT *add) |
int | mark_atoms_deriv (inp_ATOM *at, DERIV_AT *da, int start, int num, char cFlags, int *pbFound) |
int | count_one_bond_atoms (inp_ATOM *at, DERIV_AT *da, int start, int ord, char cFlags, int *bFound) |
int | is_silyl (inp_ATOM *at, int start, int ord_prev) |
int | is_silyl2 (inp_ATOM *at, int start, int from_at) |
int | is_Me_or_Et (inp_ATOM *at, int start, int ord_prev) |
int | is_nButyl (inp_ATOM *at, int start, int ord_prev) |
int | is_CF3_or_linC3F7a (inp_ATOM *at, int start, int iat_prev) |
int | is_CF3_or_linC3F7 (inp_ATOM *at, int start, int ord_prev) |
int | is_phenyl (inp_ATOM *at, int start, int ord_prev) |
int | is_DERIV_RING_O_or_NH_OUTSIDE_PRECURSOR (inp_ATOM *at, int start, int num_atoms, DERIV_AT *da1, int idrv, char *szUnderiv, int lenUnderiv, char *szUnderiv2, int lenUnderiv2, BIT_UNDERIV *bitUnderiv) |
int | is_deriv_chain (inp_ATOM *at, int start, int num_atoms, DERIV_AT *da1, int idrv, char *szUnderiv, int lenUnderiv, char *szUnderiv2, int lenUnderiv2, BIT_UNDERIV *bitUnderiv) |
int | is_deriv_chain2 (inp_ATOM *at, int start, int type, int num, int ord, int idrv, char *szUnderiv, int lenUnderiv, char *szUnderiv2, int lenUnderiv2, BIT_UNDERIV *bitUnderiv) |
int | is_deriv_chain_or_ring (inp_ATOM *at, int start, int num_atoms, DERIV_AT *da1, int *idrv) |
int | remove_deriv (DERIV_AT *da1, int idrv) |
int | remove_deriv_mark (DERIV_AT *da1, int idrv) |
int | underiv_compare (const void *p1, const void *p2) |
int | underiv_list_add_two_cuts (char *szUnderivList, int lenUnderivList, char *szUnderiv, const char cDelim) |
int | sort_merge_underiv (char *pSdfValue, int bOutputSdf, char *szUnderivList, char cDerivSeparator, const char *pszUnderivPrefix, const char *pszUnderivPostfix) |
int | eliminate_deriv_not_in_list (inp_ATOM *at, DERIV_AT *da, int num_atoms, char *szUnderivList, int lenUnderivList, char *szUnderivList2, int lenUnderivList2, BIT_UNDERIV *bitUnderivList) |
void | underiv_buf_clear (char *szUnderiv) |
int | underiv_list_add (char *szUnderivList, int lenUnderivList, const char *szUnderiv, char cDelimiter) |
const char * | underiv_list_get_last (const char *szUnderivList, char cDelimiter) |
int | make_single_cut (inp_ATOM *at, DERIV_AT *da, int iat, int icut) |
int | fill_out_bond_cuts (inp_ATOM *at, DERIV_AT *da, int num_atoms, R2C_ATPAIR *ap, int num_cuts_to_check) |
int | mark_deriv_agents (inp_ATOM *at, DERIV_AT *da, int num_atoms, R2C_ATPAIR *ap, int num_cuts_to_check, AT_NUMB *pnum_comp, int *pcur_num_at) |
int | replace_arom_bonds (inp_ATOM *at, int num_atoms, inp_ATOM *at2, int num_atoms2) |
int | add_explicit_H (INP_ATOM_DATA *inp_cur_data) |
void | free_underiv_temp_data (R2C_ATPAIR *ap, DERIV_AT *da, inp_ATOM *at2, INP_ATOM_DATA *inp_cur_data, int num_components) |
void | remove_cut_derivs (int num_atoms, inp_ATOM *at, INP_ATOM_DATA *inp_cur_data, int i_component, int *errcode) |
int | get_CO_opposite (inp_ATOM *at, int iat, int iord, int *iat_opposite, int *iord_opposite) |
int | is_DERIV_RING_DMOX_DEOX_O (inp_ATOM *at, int cur_atom, int from_ord, DERIV_AT *da, DERIV_AT *da1) |
int | is_DERIV_RING_DMOX_DEOX_N (inp_ATOM *at, int cur_atom, int from_ord, DERIV_AT *da, DERIV_AT *da1) |
int | OAD_Edit_Underivatize (struct tagINCHI_CLOCK *ic, struct tagCANON_GLOBALS *pCG, ORIG_ATOM_DATA *orig_inp_data, int bOutputSdf, int bOutputReport, char *pSdfValue) |
int | detect_r2c_Zatom (inp_ATOM *at, R2C_AT *da, int iZ) |
int | cut_ring_to_chain (inp_ATOM *at, R2C_AT *da, int iZ) |
int | Ring2Chain (struct tagINCHI_CLOCK *ic, struct tagCANON_GLOBALS *pCG, ORIG_ATOM_DATA *orig_inp_data) |
void | OAD_Edit_MergeComponentsAndRecreateOAD (ORIG_ATOM_DATA *orig_OrigAtomData, INP_ATOM_DATA *curr_InpAtomData, int num_components, int *errcode) |
Variables | |
static const int | DERIV_UNEXPADABLE |
static const int | DERIV_REPL_N_WITH_O |
static const int | DERIV_REPL_N_WITH_OH |
const char * | pszDerivName [] |
#define ALLOC_AP |
#define CFLAG_MARK_BLOCK 2 /* for block detection */ |
#define CFLAG_MARK_BLOCK_INV ((char)~(CFLAG_MARK_BLOCK)) /* for block detection */ |
#define CFLAG_MARK_BRANCH 1 /* for main derivative traversal */ |
#define COUNT_ALL_NOT_DERIV 1 /* 1=> count ALL atoms that are not in deriv. agents */ |
#define DERIV_AMINE_tN 0x0004 /* R1-N(-R2)-R3 tertiary amine */ |
#define DERIV_AT_LEN 4 |
#define DERIV_BRIDGE_NH 0x0002 /* R1-NH-R2 amine */ |
#define DERIV_BRIDGE_O 0x0001 /* R1-O-R2 => R1-OH + HO-R2 */ |
#define DERIV_DUPLIC 0x0080 /* duplicated disconnection */ |
#define DERIV_NOT 0x1000 /* cannot be a derivatization agent atom */ |
#define DERIV_RING DERIV_RING_OUTSIDE_PRECURSOR |
#define DERIV_RING2_OUTSIDE_PRECUR (DERIV_RING2_PRRLDD_OUTSIDE_PRECUR | DERIV_RING2_PPRDN_OUTSIDE_PRECUR) |
#define DERIV_RING2_PPRDN_OUTSIDE_PRECUR 0x1000 /* alcohol derivatives: R(=O)-N<C5H5 6-memb ring Piperidines; replace -N< with -OH */ |
#define DERIV_RING2_PRRLDD_OUTSIDE_PRECUR 0x0800 /* alcohol derivatives: R(=O)-N<C4H4 5-memb ring Pyrrolidides; replace -N< with -OH */ |
#define DERIV_RING_DMOX_DEOX (DERIV_RING_DMOX_DEOX_O | DERIV_RING_DMOX_DEOX_N) |
#define DERIV_RING_DMOX_DEOX_N 0x0200 /* =N- in a ring: /-O--CH2-\ DMOX, DEOX */ |
#define DERIV_RING_DMOX_DEOX_O 0x0400 /* -O- in a ring: R-C=N--------C<2Me or 2Et */ |
#define DERIV_RING_NH_OUTSIDE_PRECURSOR 0x0010 /* -NH- in a ring */ |
#define DERIV_RING_O_OUTSIDE_PRECURSOR 0x0008 /* -O- in a ring */ |
#define DERIV_RING_OUTSIDE_PRECURSOR (DERIV_RING_O_OUTSIDE_PRECURSOR | DERIV_RING_NH_OUTSIDE_PRECURSOR) |
#define DERIV_RO_COX 0x0100 /* alcohol derivatives: R-O--C(=O)C[n]F[2n+1] 0<n<4, R-O--C(=O)CH3, R-O--C(=O)-Phenyl */ |
#define DERIV_UNMARK 0x0040 /* unmark the cut */ |
#define DERIV_X_OXIME 0x0020 /* comment out to disable */ |
#define IS_DA_NUM_LE | ( | DA, | |
I, | |||
MX | |||
) | (((DA)->typ[I] && ((DA)->typ[I] & DERIV_UNEXPADABLE) == (DA)->typ[I]) || (DA)->num[I] <= (MX)) |
#define MAX_AT_DERIV 13 /* max. num of heavy atoms in removed derivatizing agent: RO-C(O)PheF5 */ |
#define MAX_PRRLDD_PPRDN_RING_SIZE PPRDN_RING_SIZE |
#define MIN_AT_LEFT_DERIV 2 /* was 3 before 2013-11-12; min num heavy atoms in derivative precursor = MIN_AT_LEFT_DERIV-1 */ |
#define MIN_PRRLDD_PPRDN_RING_SIZE PRRLDD_RING_SIZE |
#define NO_ORD_VAL 0x0037 /* not used */ |
#define NOT_AT_DERIV 99 /* DERIV_AT::num; rejected as > MAX_AT_DERIV */ |
#define OX_RING_SIZE 5 |
#define PPRDN_RING_SIZE 6 |
#define PRRLDD_RING_SIZE 5 |
#define R2C_EMPTY 127 |
#define UNDERIV_LEN 128 |
#define UNDERIV_LEN2 128 |
#define UNDERIV_LIST_LEN 2048 |
#define UNDERIV_LIST_LEN2 2048 |
#define UNDERIV_MAX_NUM 512 /*max. number of records in szUnderivList */ |
typedef int BIT_UNDERIV |
typedef struct tagDerivAttachment DERIV_AT |
typedef enum tagDerivBit DerivBit |
typedef enum tagDerivId DerivId |
typedef struct tagRing2Chain R2C_AT |
typedef struct tagAtPair R2C_ATPAIR |
enum tagDerivBit |
enum tagDerivId |
int add_explicit_H | ( | INP_ATOM_DATA * | inp_cur_data | ) |
int check_arom_chain | ( | inp_ATOM * | at, |
int | first, | ||
int | first_from, | ||
int | last, | ||
int | len | ||
) |
int cmp_r2c_atpair | ( | const void * | p1, |
const void * | p2 | ||
) |
int count_one_bond_atoms | ( | inp_ATOM * | at, |
DERIV_AT * | da, | ||
int | start, | ||
int | ord, | ||
char | cFlags, | ||
int * | bFound | ||
) |
int eliminate_deriv_not_in_list | ( | inp_ATOM * | at, |
DERIV_AT * | da, | ||
int | num_atoms, | ||
char * | szUnderivList, | ||
int | lenUnderivList, | ||
char * | szUnderivList2, | ||
int | lenUnderivList2, | ||
BIT_UNDERIV * | bitUnderivList | ||
) |
int ExtractConnectedComponent | ( | inp_ATOM * | at, |
int | num_at, | ||
int | component_number, | ||
inp_ATOM * | component_at | ||
) |
int fill_out_bond_cuts | ( | inp_ATOM * | at, |
DERIV_AT * | da, | ||
int | num_atoms, | ||
R2C_ATPAIR * | ap, | ||
int | num_cuts_to_check | ||
) |
void free_underiv_temp_data | ( | R2C_ATPAIR * | ap, |
DERIV_AT * | da, | ||
inp_ATOM * | at2, | ||
INP_ATOM_DATA * | inp_cur_data, | ||
int | num_components | ||
) |
int get_CO_opposite | ( | inp_ATOM * | at, |
int | iat, | ||
int | iord, | ||
int * | iat_opposite, | ||
int * | iord_opposite | ||
) |
int has_atom_pair | ( | R2C_ATPAIR * | ap, |
int | num_ap, | ||
AT_NUMB | at1, | ||
AT_NUMB | at2 | ||
) |
int has_atom_pair_seq | ( | R2C_ATPAIR * | ap, |
int | num_ap, | ||
AT_NUMB | at1, | ||
AT_NUMB | at2 | ||
) |
int is_Aryl | ( | inp_ATOM * | at, |
int | outside_point, | ||
int | attachment_pont | ||
) |
int is_C_Alk | ( | inp_ATOM * | at, |
int | i, | ||
char | cFlags | ||
) |
int is_C_DB_O | ( | inp_ATOM * | at, |
int | i | ||
) |
int is_C_or_S_DB_O | ( | inp_ATOM * | at, |
int | i | ||
) |
int is_C_unsat_not_arom | ( | inp_ATOM * | at, |
int | i | ||
) |
int is_CF3_or_linC3F7 | ( | inp_ATOM * | at, |
int | start, | ||
int | ord_prev | ||
) |
int is_CF3_or_linC3F7a | ( | inp_ATOM * | at, |
int | start, | ||
int | iat_prev | ||
) |
int is_deriv_chain | ( | inp_ATOM * | at, |
int | start, | ||
int | num_atoms, | ||
DERIV_AT * | da1, | ||
int | idrv, | ||
char * | szUnderiv, | ||
int | lenUnderiv, | ||
char * | szUnderiv2, | ||
int | lenUnderiv2, | ||
BIT_UNDERIV * | bitUnderiv | ||
) |
int is_deriv_chain2 | ( | inp_ATOM * | at, |
int | start, | ||
int | type, | ||
int | num, | ||
int | ord, | ||
int | idrv, | ||
char * | szUnderiv, | ||
int | lenUnderiv, | ||
char * | szUnderiv2, | ||
int | lenUnderiv2, | ||
BIT_UNDERIV * | bitUnderiv | ||
) |
int is_DERIV_RING2_PRRLDD_PPRDN | ( | inp_ATOM * | at, |
int | cur_atom, | ||
int | from_ord, | ||
DERIV_AT * | da, | ||
DERIV_AT * | da1 | ||
) |
int is_DERIV_RING_DMOX_DEOX_N | ( | inp_ATOM * | at, |
int | cur_atom, | ||
int | from_ord, | ||
DERIV_AT * | da, | ||
DERIV_AT * | da1 | ||
) |
int is_DERIV_RING_DMOX_DEOX_O | ( | inp_ATOM * | at, |
int | cur_atom, | ||
int | from_ord, | ||
DERIV_AT * | da, | ||
DERIV_AT * | da1 | ||
) |
int is_DERIV_RING_O_or_NH_OUTSIDE_PRECURSOR | ( | inp_ATOM * | at, |
int | start, | ||
int | num_atoms, | ||
DERIV_AT * | da1, | ||
int | idrv, | ||
char * | szUnderiv, | ||
int | lenUnderiv, | ||
char * | szUnderiv2, | ||
int | lenUnderiv2, | ||
BIT_UNDERIV * | bitUnderiv | ||
) |
int is_Ethyl | ( | inp_ATOM * | at, |
int | outside_point, | ||
int | attachment_point | ||
) |
int is_Me_or_Et | ( | inp_ATOM * | at, |
int | start, | ||
int | ord_prev | ||
) |
int is_Methyl | ( | inp_ATOM * | at, |
int | attachment_point | ||
) |
int is_Methyl_or_Etyl | ( | inp_ATOM * | at, |
int | outside_point, | ||
int | attachment_point | ||
) |
int is_nButyl | ( | inp_ATOM * | at, |
int | start, | ||
int | ord_prev | ||
) |
int is_P_TB_N | ( | inp_ATOM * | at, |
int | i | ||
) |
int is_PentaFluoroPhenyl | ( | inp_ATOM * | at, |
int | outside_point, | ||
int | attachment_point | ||
) |
int is_Phenyl | ( | inp_ATOM * | at, |
int | outside_point, | ||
int | attachment_point | ||
) |
int is_phenyl | ( | inp_ATOM * | at, |
int | start, | ||
int | ord_prev | ||
) |
int is_possibly_deriv_neigh | ( | inp_ATOM * | at, |
int | iat, | ||
int | iord, | ||
int | type, | ||
char | cFlags | ||
) |
int is_Saturated_C | ( | inp_ATOM * | at, |
int | attachment_pont | ||
) |
int is_Si_IV | ( | inp_ATOM * | at, |
int | i | ||
) |
int is_silyl | ( | inp_ATOM * | at, |
int | start, | ||
int | ord_prev | ||
) |
int is_silyl2 | ( | inp_ATOM * | at, |
int | start, | ||
int | from_at | ||
) |
int mark_arom_bonds | ( | struct tagINCHI_CLOCK * | ic, |
struct tagCANON_GLOBALS * | pCG, | ||
inp_ATOM * | at, | ||
int | num_atoms | ||
) |
int mark_atoms_ap | ( | inp_ATOM * | at, |
AT_NUMB | start, | ||
R2C_ATPAIR * | ap, | ||
int | num_ap, | ||
int | num, | ||
AT_NUMB | cFlags | ||
) |
int mark_atoms_cFlags | ( | inp_ATOM * | at, |
int | start, | ||
int | num, | ||
char | cFlags | ||
) |
int mark_atoms_deriv | ( | inp_ATOM * | at, |
DERIV_AT * | da, | ||
int | start, | ||
int | num, | ||
char | cFlags, | ||
int * | pbFound | ||
) |
int mark_deriv_agents | ( | inp_ATOM * | at, |
DERIV_AT * | da, | ||
int | num_atoms, | ||
R2C_ATPAIR * | ap, | ||
int | num_cuts_to_check, | ||
AT_NUMB * | pnum_comp, | ||
int * | pcur_num_at | ||
) |
int MarkRingSystemsInp | ( | inp_ATOM * | at, |
int | num_atoms, | ||
int | start | ||
) |
void OAD_Edit_MergeComponentsAndRecreateOAD | ( | ORIG_ATOM_DATA * | orig_OrigAtomData, |
INP_ATOM_DATA * | curr_InpAtomData, | ||
int | num_components, | ||
int * | errcode | ||
) |
int OAD_Edit_Underivatize | ( | struct tagINCHI_CLOCK * | ic, |
struct tagCANON_GLOBALS * | pCG, | ||
ORIG_ATOM_DATA * | orig_inp_data, | ||
int | bOutputSdf, | ||
int | bOutputReport, | ||
char * | pSdfValue | ||
) |
void remove_cut_derivs | ( | int | num_atoms, |
inp_ATOM * | at, | ||
INP_ATOM_DATA * | inp_cur_data, | ||
int | i_component, | ||
int * | errcode | ||
) |
int remove_deriv | ( | DERIV_AT * | da1, |
int | idrv | ||
) |
int remove_deriv_mark | ( | DERIV_AT * | da1, |
int | idrv | ||
) |
int Ring2Chain | ( | struct tagINCHI_CLOCK * | ic, |
struct tagCANON_GLOBALS * | pCG, | ||
ORIG_ATOM_DATA * | orig_inp_data | ||
) |
void set_R2C_el_numbers | ( | void | ) |
int sort_merge_underiv | ( | char * | pSdfValue, |
int | bOutputSdf, | ||
char * | szUnderivList, | ||
char | cDerivSeparator, | ||
const char * | pszUnderivPrefix, | ||
const char * | pszUnderivPostfix | ||
) |
int subtract_DT_from_num_H | ( | int | num_atoms, |
inp_ATOM * | at | ||
) |
void underiv_buf_clear | ( | char * | szUnderiv | ) |
int underiv_compare | ( | const void * | p1, |
const void * | p2 | ||
) |
int underiv_list_add | ( | char * | szUnderivList, |
int | lenUnderivList, | ||
const char * | szUnderiv, | ||
char | cDelimiter | ||
) |
int underiv_list_add_two_cuts | ( | char * | szUnderivList, |
int | lenUnderivList, | ||
char * | szUnderiv, | ||
const char | cDelim | ||
) |
const char * underiv_list_get_last | ( | const char * | szUnderivList, |
char | cDelimiter | ||
) |
int unmark_atoms_cFlags | ( | inp_ATOM * | at, |
int | start, | ||
int | num, | ||
char | cFlags, | ||
char | cInvFlags | ||
) |
int UnMarkDisconnectedComponents | ( | ORIG_ATOM_DATA * | orig_inp_data | ) |
int UnMarkOneComponent | ( | inp_ATOM * | at, |
int | num_atoms | ||
) |
int UnMarkOtherIndicators | ( | inp_ATOM * | at, |
int | num_atoms | ||
) |
int UnMarkRingSystemsInp | ( | inp_ATOM * | at, |
int | num_atoms | ||
) |
|
static |
|
static |
|
static |
const char* pszDerivName[] |