#include <string.h>
#include "mode.h"
#include "ichicant.h"
#include "ichitime.h"
#include "ichirvrs.h"
#include "bcf_s.h"
Data Structures | |
struct | tagTgDiffHChgFH |
Macros | |
#define | INC_ADD_EDGE 64 |
#define | fNumRPosChgH 0 /* number of positive charges on endpoints that have H in at2[] */ |
#define | fNumRPosChgU 1 /* number of positive charges on endpoints that have no H in at2[] */ |
#define | fNumRNegChgO 2 /* number of negative charges on O endpoints */ |
#define | fNumRNegChgN 3 /* number of negative charges on N endpoints */ |
#define | fNumRNeutrlH 4 /* number of neutral endp that have H in at2[] */ |
#define | fNumNPosChgH 5 /* number of positive charges on endpoints that have H in atf[] */ |
#define | fNumNPosChgU 6 /* number of positive charges on endpoints that have no H in atf[] */ |
#define | fNumNNegChgO 7 /* number of negative charges on O endpoints */ |
#define | fNumNNegChgN 8 /* number of negative charges on N endpoints */ |
#define | fNumNNeutrlH 9 /* number of neutral endp that have H in atf[] */ |
#define | fNumAllChgT 10 /* total number of fNum... */ |
#define | CHG_SET_NOOH 0 |
#define | CHG_SET_WRONG_TAUT 1 |
#define | CHG_SET_TAUT 2 |
#define | CHG_LAST_SET 2 /* the last index in trying */ |
#define | CHG_SET_O_FIXED 3 |
#define | CHG_SET_NUM 4 |
#define | CHG_SET_MISSED_TAUT 0 |
#define | CHG_SET_OTHER_TAUT_O 1 |
#define | CHG_SET_OTHER_TAUT_N 2 |
#define | CHG_LAST_SET 2 /* the last index in trying */ |
#define | CHG_SET_NN 3 |
#define | CHG_SET_AVOID 4 |
#define | CHG_SET_NUM 5 |
#define | CHG_SET_MISSED_TAUT_1 0 |
#define | CHG_SET_MISSED_TAUT_ALL 1 |
#define | CHG_SET_OTHER_TAUT_1 2 |
#define | CHG_SET_OTHER_TAUT_ALL 3 |
#define | CHG_LAST_SET 3 /* the last index in trying */ |
#define | CHG_SET_NO_IN_NO2M2 4 |
#define | CHG_SET_AVOID 5 |
#define | CHG_SET_NUM 6 |
Typedefs | |
typedef struct tagTgDiffHChgFH | TgDiffHChgFH |
Functions | |
static int | FillTgDiffHChgFH (TgDiffHChgFH tdhc[], int max_tdhc, inp_ATOM at2[], inp_ATOM atf[], AT_NUMB *nCanon2AtnoRevrs, VAL_AT *pVA, T_GROUP_INFO *ti, EDGE_LIST *pAtomIndList) |
int | bHas_N_V (inp_ATOM *at2, int num_atoms) |
int | FixFixedHRestoredStructure (CANON_GLOBALS *pCG, INCHI_CLOCK *ic, ICHICONST INPUT_PARMS *ip, STRUCT_DATA *sd, BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, inp_ATOM *at3, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, T_GROUP_INFO **ppt_group_info, inp_ATOM **ppat_norm, inp_ATOM **ppat_prep, INChI *pInChI[], long num_inp, int bHasSomeFixedH, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask, int forbidden_stereo_edge_mask) |
Variables | |
short | iat_DB_O [MAX_DIFF_FIXH] |
short | iat_SB_O_Minus [MAX_DIFF_FIXH] |
short | iat_DB_O_Plus [MAX_DIFF_FIXH] |
short | iat_SB_NH [MAX_DIFF_FIXH] |
short | iat_SB_N_Minus [MAX_DIFF_FIXH] |
short | iat_DB_N [MAX_DIFF_FIXH] |
short | iat_SB_Neutr [MAX_DIFF_FIXH] |
short | iat_DB_Charged [MAX_DIFF_FIXH] |
short | iat_DB_NHn_Plus [MAX_DIFF_FIXH] |
short | iat_SB_NHm_Neutr [MAX_DIFF_FIXH] |
short | iat_DB_O_Neutr [MAX_DIFF_FIXH] |
short | iat_DB_N_Neutr [MAX_DIFF_FIXH] |
short | iat_SB_N_Neutr [MAX_DIFF_FIXH] |
short | iat_N_V_Array [MAX_DIFF_FIXH] |
short | iat_Central [MAX_DIFF_FIXH] |
short | iat_NO2 [MAX_DIFF_FIXH] |
TgDiffHChgFH | tdhc [MAX_DIFF_FIXH] |
#define CHG_LAST_SET 2 /* the last index in trying */ |
#define CHG_LAST_SET 2 /* the last index in trying */ |
#define CHG_LAST_SET 3 /* the last index in trying */ |
#define CHG_SET_AVOID 4 |
#define CHG_SET_AVOID 5 |
#define CHG_SET_MISSED_TAUT 0 |
#define CHG_SET_MISSED_TAUT_1 0 |
#define CHG_SET_MISSED_TAUT_ALL 1 |
#define CHG_SET_NN 3 |
#define CHG_SET_NO_IN_NO2M2 4 |
#define CHG_SET_NOOH 0 |
#define CHG_SET_NUM 4 |
#define CHG_SET_NUM 5 |
#define CHG_SET_NUM 6 |
#define CHG_SET_O_FIXED 3 |
#define CHG_SET_OTHER_TAUT_1 2 |
#define CHG_SET_OTHER_TAUT_ALL 3 |
#define CHG_SET_OTHER_TAUT_N 2 |
#define CHG_SET_OTHER_TAUT_O 1 |
#define CHG_SET_TAUT 2 |
#define CHG_SET_WRONG_TAUT 1 |
#define fNumAllChgT 10 /* total number of fNum... */ |
#define fNumNNegChgN 8 /* number of negative charges on N endpoints */ |
#define fNumNNegChgO 7 /* number of negative charges on O endpoints */ |
#define fNumNNeutrlH 9 /* number of neutral endp that have H in atf[] */ |
#define fNumNPosChgH 5 /* number of positive charges on endpoints that have H in atf[] */ |
#define fNumNPosChgU 6 /* number of positive charges on endpoints that have no H in atf[] */ |
#define fNumRNegChgN 3 /* number of negative charges on N endpoints */ |
#define fNumRNegChgO 2 /* number of negative charges on O endpoints */ |
#define fNumRNeutrlH 4 /* number of neutral endp that have H in at2[] */ |
#define fNumRPosChgH 0 /* number of positive charges on endpoints that have H in at2[] */ |
#define fNumRPosChgU 1 /* number of positive charges on endpoints that have no H in at2[] */ |
#define INC_ADD_EDGE 64 |
typedef struct tagTgDiffHChgFH TgDiffHChgFH |
int bHas_N_V | ( | inp_ATOM * | at2, |
int | num_atoms | ||
) |
|
static |
int FixFixedHRestoredStructure | ( | CANON_GLOBALS * | pCG, |
INCHI_CLOCK * | ic, | ||
ICHICONST INPUT_PARMS * | ip, | ||
STRUCT_DATA * | sd, | ||
BN_STRUCT * | pBNS, | ||
BN_DATA * | pBD, | ||
StrFromINChI * | pStruct, | ||
inp_ATOM * | at, | ||
inp_ATOM * | at2, | ||
inp_ATOM * | at3, | ||
VAL_AT * | pVA, | ||
ALL_TC_GROUPS * | pTCGroups, | ||
T_GROUP_INFO ** | ppt_group_info, | ||
inp_ATOM ** | ppat_norm, | ||
inp_ATOM ** | ppat_prep, | ||
INChI * | pInChI[], | ||
long | num_inp, | ||
int | bHasSomeFixedH, | ||
int * | pnNumRunBNS, | ||
int * | pnTotalDelta, | ||
int | forbidden_edge_mask, | ||
int | forbidden_stereo_edge_mask | ||
) |
pc2i->c2at[i].endptInChI &&
at2[iat].num_H &&
at2[iat].num_H &&
at2[iat].num_H &&
(nMobHInChI && nMobHInChI[i] ) &&
(pStruct->fixed_H && pStruct->fixed_H[i]) &&
(nMobHInChI && nMobHInChI[i] ) &&
pc2i->c2at[i].endptRevrs &&
pStruct->endpoint[i] &&
(pStruct->fixed_H && pStruct->fixed_H[i]) &&
pc2i->c2at[i].endptInChI &&
(nMobHInChI && nMobHInChI[i] ) &&
(nMobHInChI && nMobHInChI[i] ) &&
short iat_Central[MAX_DIFF_FIXH] |
short iat_DB_Charged[MAX_DIFF_FIXH] |
short iat_DB_N[MAX_DIFF_FIXH] |
short iat_DB_N_Neutr[MAX_DIFF_FIXH] |
short iat_DB_NHn_Plus[MAX_DIFF_FIXH] |
short iat_DB_O[MAX_DIFF_FIXH] |
short iat_DB_O_Neutr[MAX_DIFF_FIXH] |
short iat_DB_O_Plus[MAX_DIFF_FIXH] |
short iat_N_V_Array[MAX_DIFF_FIXH] |
short iat_NO2[MAX_DIFF_FIXH] |
short iat_SB_N_Minus[MAX_DIFF_FIXH] |
short iat_SB_N_Neutr[MAX_DIFF_FIXH] |
short iat_SB_Neutr[MAX_DIFF_FIXH] |
short iat_SB_NH[MAX_DIFF_FIXH] |
short iat_SB_NHm_Neutr[MAX_DIFF_FIXH] |
short iat_SB_O_Minus[MAX_DIFF_FIXH] |
TgDiffHChgFH tdhc[MAX_DIFF_FIXH] |