#include <stdlib.h>#include <string.h>#include "mode.h"#include "ichister.h"#include "ichirvrs.h"#include "bcf_s.h"
 Include dependency graph for ichirvr2.c:Data Structures | |
| struct | tagMobileHGroups | 
| struct | tagMobileGroupList | 
Macros | |
| #define | FIX_BOND_ADD_ALLOC 128 | 
| #define | INC_EDGE_LIST 16 | 
| #define | INC_EDGE_LIST 16 | 
| #define | INC_EDGE_LIST 16 | 
| #define | IS_C(x) (NO_VERTEX != x && pVA[x].cNumValenceElectrons == 4 && pVA[x].cPeriodicRowNumber == 1) | 
Typedefs | |
| typedef struct tagMobileHGroups | MOBILE_GR | 
| typedef struct tagMobileGroupList | MGROUPS | 
Functions | |
| void | CopyAt2St (inp_ATOM *at, inp_ATOM_STEREO *st, int num_atoms) | 
| void | CopySt2At (inp_ATOM *at, inp_ATOM_STEREO *st, int num_atoms) | 
| int | RestoreAtomConnectionsSetStereo (StrFromINChI *pStruct, int iComponent, int iAtNoOffset, INChI *pInChI, INChI *pInChIMobH) | 
| int | SetStereoBondTypeFor0DParity (inp_ATOM *at, int i1, int m1) | 
| int | SetStereoBondTypesFrom0DStereo (StrFromINChI *pStruct, INChI *pInChI) | 
| int | CopyBnsToAtom (StrFromINChI *pStruct, BN_STRUCT *pBNS, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int bAllowZeroBondOrder) | 
| int | CheckBnsConsistency (StrFromINChI *pStruct, BN_STRUCT *pBNS, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int bNoRad) | 
| int | AddExplicitDeletedH (inp_ATOM *at, int jv, int num_at, int *iDeletedH, int *iH, int nNumDeletedH, int bTwoStereo) | 
| int | bFindCumuleneChain (inp_ATOM *at, AT_NUMB i1, AT_NUMB i2, AT_NUMB nCumulene[], int nMaxLen) | 
| int | set_bond_type (inp_ATOM *at, AT_NUMB i1, AT_NUMB i2, int bType) | 
| int | set_cumulene_0D_parity (inp_ATOM *at, inp_ATOM_STEREO *st, int num_at, int idelH1, int i1, int i2, int idelH2, int parity, int len) | 
| int | set_atom_0D_parity (inp_ATOM *at, inp_ATOM_STEREO *st, int num_at, int num_deleted_H, int i1, int parity) | 
| int | MoveRadToAtomsAddCharges (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int forbidden_mask) | 
| int | AdjustTgroupsToForbiddenEdges2 (BN_STRUCT *pBNS, inp_ATOM *at, VAL_AT *pVA, int num_atoms, int forbidden_mask) | 
| int | RearrangePlusMinusEdgesFlow (BN_STRUCT *pBNS, BN_DATA *pBD, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int forbidden_edge_mask) | 
| int | IncrementZeroOrderBondsToHeteroat (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | MovePlusFromS2DiaminoCarbon (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | EliminateChargeSeparationOnHeteroatoms (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask, int forbidden_stereo_edge_mask) | 
| int | RestoreCyanoGroup (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | RestoreIsoCyanoGroup (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | FixMetal_Nminus_Ominus (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | RestoreNNNgroup (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | EliminateNitrogen5Val3Bonds (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | Convert_SIV_to_SVI (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | PlusFromDB_N_DB_O_to_Metal (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | MoveMobileHToAvoidFixedBonds (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | RemoveRadFromMobileHEndpoint (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | RemoveRadFromMobileHEndpointFixH (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| int | MoveChargeToMakeCenerpoints (BN_STRUCT *pBNS, BN_DATA *pBD, StrFromINChI *pStruct, inp_ATOM *at, inp_ATOM *at2, VAL_AT *pVA, ALL_TC_GROUPS *pTCGroups, int *pnNumRunBNS, int *pnTotalDelta, int forbidden_edge_mask) | 
| #define FIX_BOND_ADD_ALLOC 128 | 
| #define INC_EDGE_LIST 16 | 
| #define INC_EDGE_LIST 16 | 
| #define INC_EDGE_LIST 16 | 
| #define IS_C | ( | x | ) | (NO_VERTEX != x && pVA[x].cNumValenceElectrons == 4 && pVA[x].cPeriodicRowNumber == 1) | 
| typedef struct tagMobileGroupList MGROUPS | 
| typedef struct tagMobileHGroups MOBILE_GR | 
| int AddExplicitDeletedH | ( | inp_ATOM * | at, | 
| int | jv, | ||
| int | num_at, | ||
| int * | iDeletedH, | ||
| int * | iH, | ||
| int | nNumDeletedH, | ||
| int | bTwoStereo | ||
| ) | 
 Here is the caller graph for this function:| int AdjustTgroupsToForbiddenEdges2 | ( | BN_STRUCT * | pBNS, | 
| inp_ATOM * | at, | ||
| VAL_AT * | pVA, | ||
| int | num_atoms, | ||
| int | forbidden_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:
 Here is the call graph for this function:
 Here is the caller graph for this function:| int CheckBnsConsistency | ( | StrFromINChI * | pStruct, | 
| BN_STRUCT * | pBNS, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int | bNoRad | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int Convert_SIV_to_SVI | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| void CopyAt2St | ( | inp_ATOM * | at, | 
| inp_ATOM_STEREO * | st, | ||
| int | num_atoms | ||
| ) | 
 Here is the caller graph for this function:| int CopyBnsToAtom | ( | StrFromINChI * | pStruct, | 
| BN_STRUCT * | pBNS, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int | bAllowZeroBondOrder | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| void CopySt2At | ( | inp_ATOM * | at, | 
| inp_ATOM_STEREO * | st, | ||
| int | num_atoms | ||
| ) | 
 Here is the caller graph for this function:| int EliminateChargeSeparationOnHeteroatoms | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask, | ||
| int | forbidden_stereo_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int EliminateNitrogen5Val3Bonds | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int FixMetal_Nminus_Ominus | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int IncrementZeroOrderBondsToHeteroat | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int MoveChargeToMakeCenerpoints | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int MoveMobileHToAvoidFixedBonds | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int MovePlusFromS2DiaminoCarbon | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int MoveRadToAtomsAddCharges | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int | forbidden_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int PlusFromDB_N_DB_O_to_Metal | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RearrangePlusMinusEdgesFlow | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RemoveRadFromMobileHEndpoint | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RemoveRadFromMobileHEndpointFixH | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RestoreAtomConnectionsSetStereo | ( | StrFromINChI * | pStruct, | 
| int | iComponent, | ||
| int | iAtNoOffset, | ||
| INChI * | pInChI, | ||
| INChI * | pInChIMobH | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RestoreCyanoGroup | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RestoreIsoCyanoGroup | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int RestoreNNNgroup | ( | BN_STRUCT * | pBNS, | 
| BN_DATA * | pBD, | ||
| StrFromINChI * | pStruct, | ||
| inp_ATOM * | at, | ||
| inp_ATOM * | at2, | ||
| VAL_AT * | pVA, | ||
| ALL_TC_GROUPS * | pTCGroups, | ||
| int * | pnNumRunBNS, | ||
| int * | pnTotalDelta, | ||
| int | forbidden_edge_mask | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int set_atom_0D_parity | ( | inp_ATOM * | at, | 
| inp_ATOM_STEREO * | st, | ||
| int | num_at, | ||
| int | num_deleted_H, | ||
| int | i1, | ||
| int | parity | ||
| ) | 
 Here is the caller graph for this function:
 Here is the call graph for this function:
 Here is the caller graph for this function:| int set_cumulene_0D_parity | ( | inp_ATOM * | at, | 
| inp_ATOM_STEREO * | st, | ||
| int | num_at, | ||
| int | idelH1, | ||
| int | i1, | ||
| int | i2, | ||
| int | idelH2, | ||
| int | parity, | ||
| int | len | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int SetStereoBondTypeFor0DParity | ( | inp_ATOM * | at, | 
| int | i1, | ||
| int | m1 | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function:| int SetStereoBondTypesFrom0DStereo | ( | StrFromINChI * | pStruct, | 
| INChI * | pInChI | ||
| ) | 
 Here is the call graph for this function:
 Here is the caller graph for this function: