Include dependency graph for strutil.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | tagInChICompareResults |
| struct | subgraf_edge |
| struct | subgraf |
| struct | subgraf_pathfinder |
Macros | |
| #define | IDIFF_SB (IDIF_SB_PARITY | IDIF_SB_EXTRA_UNDF | IDIF_SB_EXTRA | IDIF_SB_MISS_UNDF | IDIF_SB_MISS) |
| #define | IDIFF_SC (IDIF_SC_PARITY | IDIF_SC_EXTRA_UNDF | IDIF_SC_EXTRA | IDIF_SC_MISS_UNDF | IDIF_SC_MISS) |
| #define | IDIFF_CONSTIT |
| #define | IDIFF_STEREO |
| #define | ICR_MAX_ENDP_IN1_ONLY 32 |
| #define | ICR_MAX_ENDP_IN2_ONLY 32 |
| #define | ICR_MAX_DIFF_FIXED_H 32 |
| #define | ICR_MAX_SB_IN1_ONLY 32 |
| #define | ICR_MAX_SB_IN2_ONLY 32 |
| #define | ICR_MAX_SC_IN1_ONLY 32 |
| #define | ICR_MAX_SC_IN2_ONLY 32 |
| #define | ICR_MAX_SB_UNDF 32 |
| #define | ICR_MAX_SC_UNDF 32 |
| #define | EQL_EXISTS 1 |
| #define | EQL_SP3 2 |
| #define | EQL_SP3_INV 4 |
| #define | EQL_SP2 8 |
| #define | EQL_EQU 0 |
| #define | EQL_EQU_TG 1 |
| #define | EQL_EQU_ISO 2 |
| #define | EQL_NUM 0 |
| #define | EQL_NUM_INV 1 |
| #define | EQL_NUM_ISO 2 |
| #define | FLAG_SORT_PRINT_TRANSPOS_BAS 1 /* transposition in the main InChI layer */ |
| #define | FLAG_SORT_PRINT_TRANSPOS_REC 2 /* transposition in the reconnected InChI layer */ |
| #define | FLAG_SORT_PRINT_NO_NFIX_H_BAS 4 /* no fixed H non-isotopic in the main InChI layer */ |
| #define | FLAG_SORT_PRINT_NO_NFIX_H_REC 8 /* no fixed H non-isotopic in the reconnected InChI layer */ |
| #define | FLAG_SORT_PRINT_NO_IFIX_H_BAS 16 /* no fixed H isotopic in the main InChI layer */ |
| #define | FLAG_SORT_PRINT_NO_IFIX_H_REC 32 /* no fixed H isotopic in the the reconnected InChI layer */ |
| #define | FLAG_SORT_PRINT_ReChI_PREFIX 64 /* Output ReChI instead of InChI */ |
| #define | SDF_LBL_VAL(L, V) |
Typedefs | |
| typedef enum tagInchiDiffBits | IDIF |
| typedef struct tagInChICompareResults | ICR |
| typedef enum tagDiffINChISegments | DIF_SEGMENTS |
| typedef enum tagDiffINChILayers | DIF_LAYERS |
| typedef enum tagMarkDiff | DIF_VALUES |
| typedef enum tagINChISegmAction | INCHI_SEGM_ACTION |
| typedef struct subgraf_edge | subgraf_edge |
| typedef struct subgraf | subgraf |
| typedef struct subgraf_pathfinder | subgraf_pathfinder |
Functions | |
| int | ExtractConnectedComponent (inp_ATOM *at, int num_at, int component_number, inp_ATOM *component_at) |
| Extract one (connected) component. | |
| int | SetConnectedComponentNumber (inp_ATOM *at, int num_at, int component_number) |
| Set the Connected Component Number object. | |
| INChI * | Alloc_INChI (inp_ATOM *at, int num_at, int *found_num_bonds, int *found_num_isotopic, int nAllocMode) |
| Allocate INChI data structure. | |
| int | Free_INChI (INChI **ppINChI) |
| Free INChI data structure. | |
| int | Free_INChI_Members (INChI *pINChI) |
| Free INChI members. | |
| int | Free_INChI_Stereo (INChI_Stereo *pINChI_Stereo) |
| Free INChI_Stereo data structure. | |
| INChI_Aux * | Alloc_INChI_Aux (int num_at, int num_isotopic_atoms, int nAllocMode, int bOrigData) |
| Allocate AuxInfo data structure. | |
| int | Free_INChI_Aux (INChI_Aux **ppINChI_Aux) |
| Free INChI_Aux data structure. | |
| int | Create_INChI (struct tagCANON_GLOBALS *pCG, struct tagINCHI_CLOCK *ic, INPUT_PARMS *ip, INChI **ppINChI, INChI_Aux **ppINChI_Aux, ORIG_ATOM_DATA *orig_inp_data, inp_ATOM *inp_at, INP_ATOM_DATA *inp_norm_data[2], int num_inp_at, INCHI_MODE nUserMode, INCHI_MODE *pbTautFlags, INCHI_MODE *pbTautFlagsDone, struct tagInchiTime *ulMaxTime, struct tagTautomerGroupsInfo *ti_out, char *pStrErrStruct) |
| Create INChI. | |
| int | FillOutInfAtom (struct tagCANON_GLOBALS *pCG, inp_ATOM *norm_at, INF_ATOM_DATA *inf_norm_at_data, int init_num_at, int num_removed_H, int bAdd_DT_to_num_H, int nNumRemovedProtons, NUM_H *nNumRemovedProtonsIsotopic, int bIsotopic, INChI *pINChI, INChI_Aux *pINChI_Aux, int bAbcNumbers, INCHI_MODE nMode) |
| Fill out. | |
| int | FillOutCompositeCanonInfAtom (struct tagCANON_GLOBALS *pCG, COMP_ATOM_DATA *composite_norm_data, INF_ATOM_DATA *inf_norm_at_data, int bIsotopic, int bTautomeric, PINChI2 *pINChI2, PINChI_Aux2 *pINChI_Aux2, int bAbcNumbers, INCHI_MODE nMode) |
| Fill out composite canonical info atom data structure. | |
| char * | AllocateAndFillHillFormula (INChI *pINChI) |
| Allocate and fill hill formula. | |
| INCHI_MODE | CompareReversedINChI2 (INChI *i1, INChI *i2, INChI_Aux *a1, INChI_Aux *a2, ICR *picr, int *err) |
| Compares two InChIs (2) | |
| int | CompareIcr (ICR *picr1, ICR *picr2, INCHI_MODE *pin1, INCHI_MODE *pin2, INCHI_MODE mask) |
| Compares results from InChI comparison. | |
| int | CompareReversedINChI (INChI *i1, INChI *i2, INChI_Aux *a1, INChI_Aux *a2) |
| Compares two InChIs (1) | |
| const char * | CompareReversedInchiMsg (int code) |
| int | Eql_INChI_Stereo (INChI_Stereo *s1, int eql1, INChI_Stereo *s2, int eql2, int bRelRac) |
| Compares stereo information of two structures. | |
| int | Eql_INChI_Isotopic (INChI *i1, INChI *i2) |
| Compares isotopic information of two InChIs. | |
| int | Eql_INChI_Aux_Equ (INChI_Aux *a1, int eql1, INChI_Aux *a2, int eql2) |
| Compares two InChI AuxInfo objects. | |
| int | Eql_INChI_Aux_Num (INChI_Aux *a1, int eql1, INChI_Aux *a2, int eql2) |
| Compares two InChI AuxInfo objects in terms of numbering. | |
| int | bHasEquString (AT_NUMB *LinearCT, int nLenCT) |
| Checks if a given array of equivalence numbers (LinearCT) contains any repetitions. | |
| int | CompINChINonTaut2 (const void *p1, const void *p2) |
| Compare function for qsort (normal structure) | |
| int | CompINChITaut2 (const void *p1, const void *p2) |
| Compare function for qsort (tautomeric structures) | |
| int | CompINChI2 (const INCHI_SORT *p1, const INCHI_SORT *p2, int bTaut, int bCompareIsotopic) |
| Compares two INChI data structures (qsort) | |
| int | CompINChITautVsNonTaut (const INCHI_SORT *p1, const INCHI_SORT *p2, int bCompareIsotopic) |
| Compare tautomeric vs non-tautomeric information. | |
| int | CompINChILayers (const INCHI_SORT *p1, const INCHI_SORT *p2, char sDifSegs[][DIFS_LENGTH], int bFixTranspChargeBug) |
| Compare InChI layers. | |
| int | MarkUnusedAndEmptyLayers (char sDifSegs[][DIFS_LENGTH]) |
| Mark unused and empty layers. | |
| int | INChI_SegmentAction (char cDifSegs) |
| Action to take per segment (?) | |
| int | OutputINChI1 (struct tagCANON_GLOBALS *pCG, INCHI_IOS_STRING *strbuf, INCHI_SORT *pINChISortTautAndNonTaut2[][TAUT_NUM], int iINChI, ORIG_ATOM_DATA *orig_inp_data, ORIG_STRUCT *pOrigStruct, INPUT_PARMS *ip, int bDisconnectedCoord, int bOutputType, int bINChIOutputOptions, int num_components2[], int num_non_taut2[], int num_taut2[], INCHI_IOSTREAM *out_file, INCHI_IOSTREAM *log_file, int num_input_struct, int *pSortPrintINChIFlags, unsigned char save_opt_bits) |
| Main actual worker which serializes InChI to string (called from OutputINChI2( ... ) and from itself) | |
| int | OutputINChI2 (struct tagCANON_GLOBALS *pCG, INCHI_IOS_STRING *strbuf, INCHI_SORT *pINChISortTautAndNonTaut2[][TAUT_NUM], int INCHI_basic_or_INCHI_reconnected, ORIG_ATOM_DATA *orig_inp_data, ORIG_STRUCT *pOrigStruct, INPUT_PARMS *ip, int bDisconnectedCoord, int bOutputType, int bINChIOutputOptions, int num_components2[], int num_non_taut2[], int num_taut2[], INCHI_IOSTREAM *out_file, INCHI_IOSTREAM *log_file, int num_input_struct, int *pSortPrintINChIFlags, unsigned char save_opt_bits) |
| int | SaveEquComponentsInfoAndSortOrder (int iINChI, INCHI_SORT *pINChISort[TAUT_NUM], int *num_components, ORIG_ATOM_DATA *orig_inp_data, ORIG_ATOM_DATA *prep_inp_data, COMP_ATOM_DATA composite_norm_data[TAUT_NUM+1], int bCompareComponents) |
| Save equivalent components information and sort order (not used ?) | |
| int | OutputINChIPlainError (INCHI_IOSTREAM *out_file, char *pErrorText, int bError) |
| Print error message (plain text) | |
| int | GetInpStructErrorType (INPUT_PARMS *ip, int err, char *pStrErrStruct, int num_inp_atoms) |
| Get the input struct error type. | |
| int | ProcessStructError (INCHI_IOSTREAM *out_file, INCHI_IOSTREAM *log_file, char *pStrErrStruct, int nErrorType, long num_inp, INPUT_PARMS *ip) |
| int | bNumHeterAtomHasIsotopicH (inp_ATOM *atom, int num_atoms) |
| Check if hetero atoms has isotopic hydrogens. | |
| int | WriteToSDfile (const INP_ATOM_DATA *inp_at_data, INCHI_IOSTREAM *fcb, const char *name, const char *comment, const char *szLabel, const char *szValue) |
| int | bIsMetalSalt (inp_ATOM *at, int i) |
| Check if atom is a metal salt. | |
| int | bIsSameBond (int a1, int a2, int b1, int b2) |
| Check if two bonds are the same. | |
| int | imat_new (int m, int n, int ***a) |
| Allocate integer matrix. | |
| void | imat_free (int m, int **a) |
| Free integer matrix. | |
| subgraf * | subgraf_new (ORIG_ATOM_DATA *orig_inp_data, int nnodes, int *nodes) |
| Create graph from atom data. | |
| void | subgraf_free (subgraf *sg) |
| Free graph data structure. | |
| void | subgraf_debug_trace (subgraf *sg) |
| Debug graph data structure. | |
| subgraf_pathfinder * | subgraf_pathfinder_new (subgraf *sg, ORIG_ATOM_DATA *orig_inp_data, int start, int end) |
| Allocate new graph pathfinder data structure. | |
| void | subgraf_pathfinder_free (subgraf_pathfinder *spf) |
| Frees subgraph pathfinder data structure. | |
| void | subgraf_pathfinder_run (subgraf_pathfinder *spf, int nforbidden, int *forbidden_orig, int *nbonds, int **bonds, int *natoms, int *atoms) |
| Find path(s) from subgraf node spf->start to spf->end and fill bonds[nbonds] and atoms[natoms]. Does not traverse through supplied forbidden edges (if not zero/NULL) | |
| int | subgraf_pathfinder_collect_all (subgraf_pathfinder *spf, int nforbidden, int *forbidden, int *atnums) |
| Collects atom numbers along path. | |
| void | CompAtomData_GetNumMapping (COMP_ATOM_DATA *adata, int *orig_num, int *curr_num) |
Variables | |
| const char | gsMissing [] |
| const char | gsEmpty [] |
| const char | gsSpace [] |
| const char | gsEqual [] |
| #define EQL_EQU 0 |
| #define EQL_EQU_ISO 2 |
| #define EQL_EQU_TG 1 |
| #define EQL_EXISTS 1 |
| #define EQL_NUM 0 |
| #define EQL_NUM_INV 1 |
| #define EQL_NUM_ISO 2 |
| #define EQL_SP2 8 |
| #define EQL_SP3 2 |
| #define EQL_SP3_INV 4 |
| #define FLAG_SORT_PRINT_NO_IFIX_H_BAS 16 /* no fixed H isotopic in the main InChI layer */ |
| #define FLAG_SORT_PRINT_NO_IFIX_H_REC 32 /* no fixed H isotopic in the the reconnected InChI layer */ |
| #define FLAG_SORT_PRINT_NO_NFIX_H_BAS 4 /* no fixed H non-isotopic in the main InChI layer */ |
| #define FLAG_SORT_PRINT_NO_NFIX_H_REC 8 /* no fixed H non-isotopic in the reconnected InChI layer */ |
| #define FLAG_SORT_PRINT_ReChI_PREFIX 64 /* Output ReChI instead of InChI */ |
| #define FLAG_SORT_PRINT_TRANSPOS_BAS 1 /* transposition in the main InChI layer */ |
| #define FLAG_SORT_PRINT_TRANSPOS_REC 2 /* transposition in the reconnected InChI layer */ |
| #define ICR_MAX_DIFF_FIXED_H 32 |
| #define ICR_MAX_ENDP_IN1_ONLY 32 |
| #define ICR_MAX_ENDP_IN2_ONLY 32 |
| #define ICR_MAX_SB_IN1_ONLY 32 |
| #define ICR_MAX_SB_IN2_ONLY 32 |
| #define ICR_MAX_SB_UNDF 32 |
| #define ICR_MAX_SC_IN1_ONLY 32 |
| #define ICR_MAX_SC_IN2_ONLY 32 |
| #define ICR_MAX_SC_UNDF 32 |
| #define IDIFF_CONSTIT |
| #define IDIFF_SB (IDIF_SB_PARITY | IDIF_SB_EXTRA_UNDF | IDIF_SB_EXTRA | IDIF_SB_MISS_UNDF | IDIF_SB_MISS) |
| #define IDIFF_SC (IDIF_SC_PARITY | IDIF_SC_EXTRA_UNDF | IDIF_SC_EXTRA | IDIF_SC_MISS_UNDF | IDIF_SC_MISS) |
| #define IDIFF_STEREO |
| #define SDF_LBL_VAL | ( | L, | |
| V | |||
| ) |
| typedef enum tagDiffINChILayers DIF_LAYERS |
| typedef enum tagDiffINChISegments DIF_SEGMENTS |
| typedef enum tagMarkDiff DIF_VALUES |
| typedef struct tagInChICompareResults ICR |
| typedef enum tagInchiDiffBits IDIF |
| typedef enum tagINChISegmAction INCHI_SEGM_ACTION |
| typedef struct subgraf_edge subgraf_edge |
| typedef struct subgraf_pathfinder subgraf_pathfinder |
| enum tagDiffINChILayers |
| enum tagDiffINChISegments |
| enum tagInchiDiffBits |
| enum tagINChISegmAction |
| enum tagMarkDiff |
| INChI * Alloc_INChI | ( | inp_ATOM * | at, |
| int | num_at, | ||
| int * | found_num_bonds, | ||
| int * | found_num_isotopic, | ||
| int | nAllocMode | ||
| ) |
Allocate INChI data structure.
| at | Pointer to atom array |
| num_at | Number of atoms |
| found_num_bonds | Pointer to number of bonds |
| found_num_isotopic | Pointer to number of isotopic atoms |
| nAllocMode | Allocation mode |
Here is the call graph for this function:
Here is the caller graph for this function:| INChI_Aux * Alloc_INChI_Aux | ( | int | num_at, |
| int | num_isotopic_atoms, | ||
| int | nAllocMode, | ||
| int | bOrigData | ||
| ) |
Allocate AuxInfo data structure.
| num_at | Number of atoms |
| num_isotopic_atoms | Number of isotopic atoms |
| nAllocMode | Allocation mode |
| bOrigData | Flag indicating if the atom data is original |
Here is the call graph for this function:
Here is the caller graph for this function:| char * AllocateAndFillHillFormula | ( | INChI * | pINChI | ) |
Allocate and fill hill formula.
| pINChI | Pointer to INChI data structure |
Here is the call graph for this function:
Here is the caller graph for this function:| int bHasEquString | ( | AT_NUMB * | LinearCT, |
| int | nLenCT | ||
| ) |
Checks if a given array of equivalence numbers (LinearCT) contains any repetitions.
| LinearCT | Pointer to equivalence numbers |
| nLenCT | Length of the array |
Here is the caller graph for this function:| int bIsMetalSalt | ( | inp_ATOM * | at, |
| int | i | ||
| ) |
Check if atom is a metal salt.
| at | Pointer to atom array |
| i | atom index |
Here is the call graph for this function:
Here is the caller graph for this function:| int bIsSameBond | ( | int | a1, |
| int | a2, | ||
| int | b1, | ||
| int | b2 | ||
| ) |
Check if two bonds are the same.
| a1 | Atom a1 index |
| a2 | Atom a2 index |
| b1 | Atom b1 index |
| b2 | Atom b2 index |
Here is the caller graph for this function:| int bNumHeterAtomHasIsotopicH | ( | inp_ATOM * | atom, |
| int | num_atoms | ||
| ) |
Check if hetero atoms has isotopic hydrogens.
| atom | Pointer to atom array |
| num_atoms | Number of atoms |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompareIcr | ( | ICR * | picr1, |
| ICR * | picr2, | ||
| INCHI_MODE * | pin1, | ||
| INCHI_MODE * | pin2, | ||
| INCHI_MODE | mask | ||
| ) |
Compares results from InChI comparison.
| picr1 | Pointer to first comparison results |
| picr2 | Pointer to second comparison results |
| pin1 | Pointer to first InChI mode (never used?) |
| pin2 | Pointer to second InChI mode (never used?) |
| mask | Either IDIFF_CONSTIT or IDIFF_STEREO |
Here is the caller graph for this function:Compares two InChIs (1)
| i1 | Pointer to first InChI (InChI from reversed struct) |
| i2 | Pointer to second InChI |
| a1 | Pointer to first InChI AuxInfo |
| a2 | Pointer to second InChI AuxInfo |
Here is the call graph for this function:
Here is the caller graph for this function:| INCHI_MODE CompareReversedINChI2 | ( | INChI * | i1, |
| INChI * | i2, | ||
| INChI_Aux * | a1, | ||
| INChI_Aux * | a2, | ||
| ICR * | picr, | ||
| int * | err | ||
| ) |
Compares two InChIs (2)
| i1 | Pointer to first InChI (InChI from reversed struct) |
| i2 | Pointer to second InChI |
| a1 | Pointer to first InChI AuxInfo |
| a2 | Pointer to second InChI AuxInfo |
| picr | Pointer to comparison results |
| err | Pointer to error code |
Here is the call graph for this function:
Here is the caller graph for this function:| const char * CompareReversedInchiMsg | ( | int | code | ) |
| void CompAtomData_GetNumMapping | ( | COMP_ATOM_DATA * | adata, |
| int * | orig_num, | ||
| int * | curr_num | ||
| ) |
Here is the caller graph for this function:| int CompINChI2 | ( | const INCHI_SORT * | p1, |
| const INCHI_SORT * | p2, | ||
| int | bTaut, | ||
| int | bCompareIsotopic | ||
| ) |
Compares two INChI data structures (qsort)
| p1 | Pointer to the first INCHI_SORT data structure |
| p2 | Pointer to the second INCHI_SORT data structure |
| bTaut | Flag for tautomeric comparison |
| bCompareIsotopic | Flag for isotopic comparison |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompINChILayers | ( | const INCHI_SORT * | p1, |
| const INCHI_SORT * | p2, | ||
| char | sDifSegs[][DIFS_LENGTH], | ||
| int | bFixTranspChargeBug | ||
| ) |
Compare InChI layers.
| p1 | Pointer to InChI component 1 |
| p2 | Pointer to InChI component 2 |
| sDifSegs | Array of different layers |
| bFixTranspChargeBug | Flag to fix charge bug (?) |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompINChINonTaut2 | ( | const void * | p1, |
| const void * | p2 | ||
| ) |
Compare function for qsort (normal structure)
| p1 | Pointer to first INCHI_SORT structure |
| p2 | Pointer to second INCHI_SORT structure |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompINChITaut2 | ( | const void * | p1, |
| const void * | p2 | ||
| ) |
Compare function for qsort (tautomeric structures)
| p1 | Pointer to first INCHI_SORT structure |
| p2 | Pointer to second INCHI_SORT structure |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompINChITautVsNonTaut | ( | const INCHI_SORT * | p1, |
| const INCHI_SORT * | p2, | ||
| int | bCompareIsotopic | ||
| ) |
Compare tautomeric vs non-tautomeric information.
| p1 | Pointer to the first INCHI_SORT data structure |
| p2 | Pointer to the second INCHI_SORT data structure |
| bCompareIsotopic | Flag for comparing isotopic non-tautomeric part |
Here is the call graph for this function:
Here is the caller graph for this function:| int Create_INChI | ( | struct tagCANON_GLOBALS * | pCG, |
| struct tagINCHI_CLOCK * | ic, | ||
| INPUT_PARMS * | ip, | ||
| INChI ** | ppINChI, | ||
| INChI_Aux ** | ppINChI_Aux, | ||
| ORIG_ATOM_DATA * | orig_inp_data, | ||
| inp_ATOM * | inp_at, | ||
| INP_ATOM_DATA * | inp_norm_data[2], | ||
| int | num_inp_at, | ||
| INCHI_MODE | nUserMode, | ||
| INCHI_MODE * | pbTautFlags, | ||
| INCHI_MODE * | pbTautFlagsDone, | ||
| struct tagInchiTime * | ulMaxTime, | ||
| struct tagTautomerGroupsInfo * | ti_out, | ||
| char * | pStrErrStruct | ||
| ) |
Create INChI.
| pCG | Pointer to canonicalization globals data structure |
| ic | Pointer to InChI clock data structure |
| ip | Pointer to input parameters |
| ppINChI | Pointer to INChI data structure |
| ppINChI_Aux | Pointer to AuxInfo data structure |
| orig_inp_data | Pointer to original atom data |
| inp_at | Pointer to atom array |
| inp_norm_data | Pointer to normalized atom data |
| num_inp_at | Number of atoms |
| nUserMode | User mode |
| pbTautFlags | Tautomer flags |
| pbTautFlagsDone | Tautomer flags completed |
| ulMaxTime | Maximum time |
| ti_out | Tautomer info |
| pStrErrStruct | Store error or warning messages |
Here is the call graph for this function:
Here is the caller graph for this function:Compares two InChI AuxInfo objects.
| a1 | Pointer to first AuxInfo |
| eql1 | Flag to compare type 1 |
| a2 | Pointer to second AuxInfo |
| eql2 | Flag to compare type 2 |
Here is the call graph for this function:
Here is the caller graph for this function:Compares two InChI AuxInfo objects in terms of numbering.
| a1 | Pointer to first AuxInfo |
| eql1 | Flag to compare type 1 |
| a2 | Pointer to second AuxInfo |
| eql2 | Flag to compare type 2 |
Here is the caller graph for this function:Compares isotopic information of two InChIs.
| i1 | Pointer to first InChI |
| i2 | Pointer to second InChI |
Here is the caller graph for this function:| int Eql_INChI_Stereo | ( | INChI_Stereo * | s1, |
| int | eql1, | ||
| INChI_Stereo * | s2, | ||
| int | eql2, | ||
| int | bRelRac | ||
| ) |
Compares stereo information of two structures.
| s1 | Pointer to stereo information of first structure |
| eql1 | Flag for stereo information check |
| s2 | Pointer to stereo information of second structure |
| eql2 | Flag for stereo information check |
| bRelRac | Flag to compare racemic stereo information |
Here is the caller graph for this function:| int ExtractConnectedComponent | ( | inp_ATOM * | at, |
| int | num_at, | ||
| int | component_number, | ||
| inp_ATOM * | component_at | ||
| ) |
Extract one (connected) component.
| at | Pointer to atom array |
| num_at | Number of atoms |
| component_number | Component number |
| component_at | Pointer to component atom array |
| int FillOutCompositeCanonInfAtom | ( | struct tagCANON_GLOBALS * | pCG, |
| COMP_ATOM_DATA * | composite_norm_data, | ||
| INF_ATOM_DATA * | inf_norm_at_data, | ||
| int | bIsotopic, | ||
| int | bTautomeric, | ||
| PINChI2 * | pINChI2, | ||
| PINChI_Aux2 * | pINChI_Aux2, | ||
| int | bAbcNumbers, | ||
| INCHI_MODE | nMode | ||
| ) |
Fill out composite canonical info atom data structure.
| pCG | Pointer to canonicalization globals data structure |
| composite_norm_data | Pointer to composite normalized atom data |
| inf_norm_at_data | Pointer to normalized info atom data structure |
| bIsotopic | Flag indicating if the atom data is isotopic |
| bTautomeric | Flag indicating if the atom data is tautomeric |
| pINChI2 | Pointer to INChI2 data structure (?) |
| pINChI_Aux2 | Pointer to AuxInfo2 data structure (?) |
| bAbcNumbers | Flag indicating whether to use alphanumeric values (?) |
| nMode | Stereochemistry mode |
| int FillOutInfAtom | ( | struct tagCANON_GLOBALS * | pCG, |
| inp_ATOM * | norm_at, | ||
| INF_ATOM_DATA * | inf_norm_at_data, | ||
| int | init_num_at, | ||
| int | num_removed_H, | ||
| int | bAdd_DT_to_num_H, | ||
| int | nNumRemovedProtons, | ||
| NUM_H * | nNumRemovedProtonsIsotopic, | ||
| int | bIsotopic, | ||
| INChI * | pINChI, | ||
| INChI_Aux * | pINChI_Aux, | ||
| int | bAbcNumbers, | ||
| INCHI_MODE | nMode | ||
| ) |
Fill out.
| pCG | Pointer to InChI clock data structure |
| norm_at | Pointer to normalized atoms |
| inf_norm_at_data | Pointer to normalized info atom data structure |
| init_num_at | Number of atoms |
| num_removed_H | Number of removed hydrogens |
| bAdd_DT_to_num_H | Add isotopic hydrogens to the number of hydrogens |
| nNumRemovedProtons | Number of removed protons |
| nNumRemovedProtonsIsotopic | Pointer to array of removed protons (isotopic) |
| bIsotopic | Flag indicating if the atom data is isotopic |
| pINChI | Pointer to INChI data structure |
| pINChI_Aux | Pointer to AuxInfo data structure |
| bAbcNumbers | Flag indicating whether to use alphanumeric values (?) |
| nMode | Stereochemistry mode |
| int Free_INChI | ( | INChI ** | ppINChI | ) |
Free INChI data structure.
| ppINChI | Pointer to INChI data structure |
Here is the call graph for this function:
Here is the caller graph for this function:| int Free_INChI_Aux | ( | INChI_Aux ** | ppINChI_Aux | ) |
Free INChI_Aux data structure.
| ppINChI_Aux | Pointer to INChI_Aux data structure |
Here is the caller graph for this function:| int Free_INChI_Members | ( | INChI * | pINChI | ) |
Free INChI members.
| pINChI | Pointer to INChI data structure |
Here is the call graph for this function:
Here is the caller graph for this function:| int Free_INChI_Stereo | ( | INChI_Stereo * | pINChI_Stereo | ) |
Free INChI_Stereo data structure.
| pINChI_Stereo | Pointer to INChI_Stereo |
Here is the caller graph for this function:| int GetInpStructErrorType | ( | INPUT_PARMS * | ip, |
| int | err, | ||
| char * | pStrErrStruct, | ||
| int | num_inp_atoms | ||
| ) |
Get the input struct error type.
| ip | Pointer to input parameters |
| err | Error code |
| pStrErrStruct | Pointer to error string |
| num_inp_atoms | Number of input atoms |
Here is the caller graph for this function:| void imat_free | ( | int | m, |
| int ** | a | ||
| ) |
Free integer matrix.
| m | Size of matrix |
| a | Pointer to matrix |
Here is the caller graph for this function:| int imat_new | ( | int | m, |
| int | n, | ||
| int *** | a | ||
| ) |
Allocate integer matrix.
| m | Size of matrix |
| n | Size of matrix |
| a | Pointer to matrix |
Here is the call graph for this function:
Here is the caller graph for this function:| int INChI_SegmentAction | ( | char | cDifSegs | ) |
Action to take per segment (?)
| cDifSegs | Segment bits |
Here is the caller graph for this function:| int MarkUnusedAndEmptyLayers | ( | char | sDifSegs[][DIFS_LENGTH] | ) |
Mark unused and empty layers.
| sDifSegs | Array of different layers |
Here is the caller graph for this function:| int OutputINChI1 | ( | struct tagCANON_GLOBALS * | pCG, |
| INCHI_IOS_STRING * | strbuf, | ||
| INCHI_SORT * | pINChISortTautAndNonTaut2[][TAUT_NUM], | ||
| int | iINChI, | ||
| ORIG_ATOM_DATA * | orig_inp_data, | ||
| ORIG_STRUCT * | pOrigStruct, | ||
| INPUT_PARMS * | ip, | ||
| int | bDisconnectedCoord, | ||
| int | bOutputType, | ||
| int | bINChIOutputOptions, | ||
| int | num_components2[], | ||
| int | num_non_taut2[], | ||
| int | num_taut2[], | ||
| INCHI_IOSTREAM * | out_file, | ||
| INCHI_IOSTREAM * | log_file, | ||
| int | num_input_struct, | ||
| int * | pSortPrintINChIFlags, | ||
| unsigned char | save_opt_bits | ||
| ) |
Main actual worker which serializes InChI to string (called from OutputINChI2( ... ) and from itself)
| pCG | Pointer to canonicalisation parameters |
| strbuf | Point to string buffer |
| pINChISortTautAndNonTaut2 | |
| iINChI | InChI basic or InChI reconnect information (?) |
| orig_inp_data | Pointer to original atom data structure |
| pOrigStruct | Pointer to original stucture |
| ip | Pointer to input parameters |
| bDisconnectedCoord | Flag for disconnected coordinates |
| bOutputType | Flag for output type |
| bINChIOutputOptions | Flag for InChI output options |
| num_components2 | Pointer to number of components |
| num_non_taut2 | Pointer to number of non tautomeric units (?) |
| num_taut2 | Pointer to number of tautomeric units |
| out_file | Pointer to output file |
| log_file | Pointer to log file |
| num_input_struct | Number of input structures |
| pSortPrintINChIFlags | Pointer to sort and print InChI flags (?) |
| save_opt_bits | Flag to save optional bits (?) |
Here is the call graph for this function:
Here is the caller graph for this function:| int OutputINChI2 | ( | struct tagCANON_GLOBALS * | pCG, |
| INCHI_IOS_STRING * | strbuf, | ||
| INCHI_SORT * | pINChISortTautAndNonTaut2[][TAUT_NUM], | ||
| int | INCHI_basic_or_INCHI_reconnected, | ||
| ORIG_ATOM_DATA * | orig_inp_data, | ||
| ORIG_STRUCT * | pOrigStruct, | ||
| INPUT_PARMS * | ip, | ||
| int | bDisconnectedCoord, | ||
| int | bOutputType, | ||
| int | bINChIOutputOptions, | ||
| int | num_components2[], | ||
| int | num_non_taut2[], | ||
| int | num_taut2[], | ||
| INCHI_IOSTREAM * | out_file, | ||
| INCHI_IOSTREAM * | log_file, | ||
| int | num_input_struct, | ||
| int * | pSortPrintINChIFlags, | ||
| unsigned char | save_opt_bits | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int OutputINChIPlainError | ( | INCHI_IOSTREAM * | out_file, |
| char * | pErrorText, | ||
| int | bError | ||
| ) |
Print error message (plain text)
| out_file | Pointer to output file |
| pErrorText | Pointer to error text |
| bError | Error type |
Here is the call graph for this function:
Here is the caller graph for this function:| int ProcessStructError | ( | INCHI_IOSTREAM * | out_file, |
| INCHI_IOSTREAM * | log_file, | ||
| char * | pStrErrStruct, | ||
| int | nErrorType, | ||
| long | num_inp, | ||
| INPUT_PARMS * | ip | ||
| ) |
| out_file | Pointer to output file |
| log_file | Pointer to log file |
| pStrErrStruct | Pointer to error string |
| nErrorType | Error type |
| num_inp | Number of input structure (?) |
| ip | Pointer to input parameters |
Here is the call graph for this function:
Here is the caller graph for this function:| int SaveEquComponentsInfoAndSortOrder | ( | int | iINChI, |
| INCHI_SORT * | pINChISort[TAUT_NUM], | ||
| int * | num_components, | ||
| ORIG_ATOM_DATA * | orig_inp_data, | ||
| ORIG_ATOM_DATA * | prep_inp_data, | ||
| COMP_ATOM_DATA | composite_norm_data[TAUT_NUM+1], | ||
| int | bCompareComponents | ||
| ) |
Save equivalent components information and sort order (not used ?)
| iINChI | Index to component |
| pINChISort | Pointer to InChI sort structure |
| num_components | Pointer to number of components |
| orig_inp_data | Pointer to original atom data |
| prep_inp_data | Pointer to prepared original atom data (?) |
| composite_norm_data | Pointer to composite data (?) |
| bCompareComponents | Type of comparisson: 1 default, 2 non-isotopic, 4 -non-tautomeric |
Here is the caller graph for this function:| int SetConnectedComponentNumber | ( | inp_ATOM * | at, |
| int | num_at, | ||
| int | component_number | ||
| ) |
Set the Connected Component Number object.
| at | Pointer to atom array |
| num_at | Number of atoms |
| component_number | Component number |
Here is the caller graph for this function:| void subgraf_debug_trace | ( | subgraf * | sg | ) |
Debug graph data structure.
| sg | Pointer to graph |
| void subgraf_free | ( | subgraf * | sg | ) |
Free graph data structure.
| sg | Pointer to graph |
Here is the caller graph for this function:| subgraf * subgraf_new | ( | ORIG_ATOM_DATA * | orig_inp_data, |
| int | nnodes, | ||
| int * | nodes | ||
| ) |
Create graph from atom data.
| orig_inp_data | Pointer to original atom data |
| nnodes | Number of nodes |
| nodes | Pointer to nodes |
Here is the call graph for this function:
Here is the caller graph for this function:| int subgraf_pathfinder_collect_all | ( | subgraf_pathfinder * | spf, |
| int | nforbidden, | ||
| int * | forbidden, | ||
| int * | atnums | ||
| ) |
Collects atom numbers along path.
| spf | Pointer to graph pathfinder data structure |
| nforbidden | Number of edges forbidden for traversal |
| forbidden | Pointer to forbidden edges |
| atnums | Pointer to atom numbers |
Here is the call graph for this function:
Here is the caller graph for this function:| void subgraf_pathfinder_free | ( | subgraf_pathfinder * | spf | ) |
Frees subgraph pathfinder data structure.
| spf | Pointer to graph pathfinder data structure |
Here is the caller graph for this function:| subgraf_pathfinder * subgraf_pathfinder_new | ( | subgraf * | sg, |
| ORIG_ATOM_DATA * | orig_inp_data, | ||
| int | start, | ||
| int | end | ||
| ) |
Allocate new graph pathfinder data structure.
| sg | Pointer to graph |
| orig_inp_data | Pointer to original atom data |
| start | Starting node |
| end | End node |
Here is the caller graph for this function:| void subgraf_pathfinder_run | ( | subgraf_pathfinder * | spf, |
| int | nforbidden, | ||
| int * | forbidden_orig, | ||
| int * | nbonds, | ||
| int ** | bonds, | ||
| int * | natoms, | ||
| int * | atoms | ||
| ) |
Find path(s) from subgraf node spf->start to spf->end and fill bonds[nbonds] and atoms[natoms]. Does not traverse through supplied forbidden edges (if not zero/NULL)
| spf | Pointer to graph pathfinder data structure |
| nforbidden | Number of forbidden edges |
| forbidden_orig | Pointer forbidden edges |
| nbonds | Number of bonds |
| bonds | Pointer to bonds |
| natoms | Number of atoms |
| atoms | Pointer to atoms |
Here is the call graph for this function:
Here is the caller graph for this function:| int WriteToSDfile | ( | const INP_ATOM_DATA * | inp_at_data, |
| INCHI_IOSTREAM * | fcb, | ||
| const char * | name, | ||
| const char * | comment, | ||
| const char * | szLabel, | ||
| const char * | szValue | ||
| ) |
|
extern |
|
extern |
|
extern |
|
extern |