#include <stdlib.h>#include <string.h>#include <ctype.h>#include <locale.h>#include "mode.h"#include "ichimake.h"#include "inchi_api.h"#include "ichimain.h"#include "ichister.h"#include "ichi_io.h"#include "ichitime.h"#include "ichi_bns.h"#include "bcf_s.h"
Include dependency graph for ichimake.c:Data Structures | |
| struct | tagOrderStruct |
Macros | |
| #define | nFirstFmlSegm DIFS_f_FORMULA |
| #define | nFirstIsoSegm DIFS_i_IATOMS |
Typedefs | |
| typedef enum tagSp3StereoTypeTmp | SP3_TYPE_TMP |
| typedef struct tagOrderStruct | OrderStruct |
Enumerations | |
| enum | tagSp3StereoTypeTmp { SP3_NONE = 0 , SP3_ONLY = 1 , SP3_ABS = 2 , SP3_REL = 4 , SP3_RAC = 8 , SP3_TYPE = (SP3_ABS | SP3_REL | SP3_RAC) , SP3_ANY = (SP3_ABS | SP3_REL | SP3_RAC | SP3_ONLY) } |
Functions | |
| int | inp2spATOM (inp_ATOM *inp_at, int num_inp_at, sp_ATOM *at) |
| int | GetElementAndCount (const char **f, char *szEl, int *count) |
| int | CompareHillFormulas (const char *f1, const char *f2) |
| int | CompareInchiStereo (INChI_Stereo *Stereo1, INCHI_MODE nFlags1, INChI_Stereo *Stereo2, INCHI_MODE nFlags2) |
| int | CompareReversedStereoINChI (INChI_Stereo *s1, INChI_Stereo *s2) |
| int | GetAtomOrdNbrInCanonOrd (struct tagCANON_GLOBALS *pCG, inp_ATOM *norm_at, AT_NUMB *nAtomOrdNbr, AT_NUMB *nOrigAtNosInCanonOrd, int num_at) |
| int | FillOutCanonInfAtom (struct tagCANON_GLOBALS *pCG, inp_ATOM *norm_at, INF_ATOM_DATA *inf_norm_at_data, int init_num_at, int bIsotopic, INChI *pINChI, INChI_Aux *pINChI_Aux, int bAbcNumbers, INCHI_MODE nMode) |
| int | FillOutOneCanonInfAtom (struct tagCANON_GLOBALS *pCG, inp_ATOM *inp_norm_at, INF_ATOM_DATA *inf_norm_at_data, AT_NUMB *pStereoFlags, int init_num_at, int offset, int offset_H, int bIsotopic, INChI *pINChI, INChI_Aux *pINChI_Aux, int bAbcNumbers, INCHI_MODE nMode) |
| int | FillOutInputInfAtom (inp_ATOM *inp_at, INF_ATOM_DATA *inf_at_data, int init_num_at, int num_removed_H, int bAdd_DT_to_num_H, int nNumRemovedProtons, NUM_H *nNumRemovedProtonsIsotopic, int bIsotopic, int bAbcNumbers) |
| int | CheckCanonNumberingCorrectness (int num_atoms, int num_at_tg, sp_ATOM *at, CANON_STAT *pCS, CANON_GLOBALS *pCG, int bTautomeric, char *pStrErrStruct) |
| static int | CompareDfsDescendants4CT (const void *a1, const void *a2, void *) |
| int | GetSp3RelRacAbs (const INChI *pINChI, INChI_Stereo *Stereo) |
| int | CompareReversedStereoINChI2 (INChI_Stereo *s1, INChI_Stereo *s2, ICR *picr) |
| int | CompareHillFormulasNoH (const char *f1, const char *f2, int *num_H1, int *num_H2) |
| int | CompareTautNonIsoPartOfINChI (const INChI *i1, const INChI *i2) |
| 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 | INChI_SegmentAction (char cDifSegs) |
| Action to take per segment (?) | |
| int | MarkUnusedAndEmptyLayers (char sDifSegs[][DIFS_LENGTH]) |
| Mark unused and empty layers. | |
| int | CompINChI2 (const INCHI_SORT *p1, const INCHI_SORT *p2, int bTaut, int bCompareIsotopic) |
| Compares two INChI data structures (qsort) | |
| 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) | |
| void | mystrrev (char *p) |
| Reverse a string in place. | |
| AT_NUMB * | GetDfsOrder4CT (CANON_GLOBALS *pCG, AT_NUMB *LinearCT, int nLenCT, S_CHAR *nNum_H, int num_atoms, int nCtMode) |
| 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 | CompareReversedINChI (INChI *i1, INChI *i2, INChI_Aux *a1, INChI_Aux *a2) |
| Compares two InChIs (1) | |
| int | CompareIcr (ICR *picr1, ICR *picr2, INCHI_MODE *pin1, INCHI_MODE *pin2, INCHI_MODE mask) |
| Compares results from InChI comparison. | |
| INCHI_MODE | CompareReversedINChI2 (INChI *i1, INChI *i2, INChI_Aux *a1, INChI_Aux *a2, ICR *picr, int *err) |
| Compares two InChIs (2) | |
| int | Create_INChI (CANON_GLOBALS *pCG, INCHI_CLOCK *ic, INPUT_PARMS *ip, INChI **ppINChI, INChI_Aux **ppINChI_Aux, ORIG_ATOM_DATA *orig_inp_data, inp_ATOM *inp_at, INP_ATOM_DATA *out_norm_data[2], int num_inp_at, INCHI_MODE nUserMode, INCHI_MODE *pbTautFlags, INCHI_MODE *pbTautFlagsDone, struct tagInchiTime *ulMaxTime, T_GROUP_INFO *ti_out, char *pStrErrStruct) |
| Create INChI. | |
| #define nFirstFmlSegm DIFS_f_FORMULA |
| #define nFirstIsoSegm DIFS_i_IATOMS |
| typedef struct tagOrderStruct OrderStruct |
| typedef enum tagSp3StereoTypeTmp SP3_TYPE_TMP |
| enum tagSp3StereoTypeTmp |
| int CheckCanonNumberingCorrectness | ( | int | num_atoms, |
| int | num_at_tg, | ||
| sp_ATOM * | at, | ||
| CANON_STAT * | pCS, | ||
| CANON_GLOBALS * | pCG, | ||
| int | bTautomeric, | ||
| char * | pStrErrStruct | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Here is the caller graph for this function:| int CompareHillFormulas | ( | const char * | f1, |
| const char * | f2 | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int CompareHillFormulasNoH | ( | const char * | f1, |
| const char * | f2, | ||
| int * | num_H1, | ||
| int * | num_H2 | ||
| ) |
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:| int CompareInchiStereo | ( | INChI_Stereo * | Stereo1, |
| INCHI_MODE | nFlags1, | ||
| INChI_Stereo * | Stereo2, | ||
| INCHI_MODE | nFlags2 | ||
| ) |
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:| int CompareReversedStereoINChI | ( | INChI_Stereo * | s1, |
| INChI_Stereo * | s2 | ||
| ) |
Here is the caller graph for this function:| int CompareReversedStereoINChI2 | ( | INChI_Stereo * | s1, |
| INChI_Stereo * | s2, | ||
| ICR * | picr | ||
| ) |
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 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:| int FillOutCanonInfAtom | ( | struct tagCANON_GLOBALS * | pCG, |
| inp_ATOM * | norm_at, | ||
| INF_ATOM_DATA * | inf_norm_at_data, | ||
| int | init_num_at, | ||
| int | bIsotopic, | ||
| INChI * | pINChI, | ||
| INChI_Aux * | pINChI_Aux, | ||
| int | bAbcNumbers, | ||
| INCHI_MODE | nMode | ||
| ) |
| int FillOutInputInfAtom | ( | inp_ATOM * | inp_at, |
| INF_ATOM_DATA * | inf_at_data, | ||
| int | init_num_at, | ||
| int | num_removed_H, | ||
| int | bAdd_DT_to_num_H, | ||
| int | nNumRemovedProtons, | ||
| NUM_H * | nNumRemovedProtonsIsotopic, | ||
| int | bIsotopic, | ||
| int | bAbcNumbers | ||
| ) |
| int FillOutOneCanonInfAtom | ( | struct tagCANON_GLOBALS * | pCG, |
| inp_ATOM * | inp_norm_at, | ||
| INF_ATOM_DATA * | inf_norm_at_data, | ||
| AT_NUMB * | pStereoFlags, | ||
| int | init_num_at, | ||
| int | offset, | ||
| int | offset_H, | ||
| int | bIsotopic, | ||
| INChI * | pINChI, | ||
| INChI_Aux * | pINChI_Aux, | ||
| int | bAbcNumbers, | ||
| INCHI_MODE | nMode | ||
| ) |
| int GetAtomOrdNbrInCanonOrd | ( | struct tagCANON_GLOBALS * | pCG, |
| inp_ATOM * | norm_at, | ||
| AT_NUMB * | nAtomOrdNbr, | ||
| AT_NUMB * | nOrigAtNosInCanonOrd, | ||
| int | num_at | ||
| ) |
| AT_NUMB * GetDfsOrder4CT | ( | CANON_GLOBALS * | pCG, |
| AT_NUMB * | LinearCT, | ||
| int | nLenCT, | ||
| S_CHAR * | nNum_H, | ||
| int | num_atoms, | ||
| int | nCtMode | ||
| ) |
Here is the call graph for this function:
Here is the caller graph for this function:| int GetElementAndCount | ( | const char ** | f, |
| char * | szEl, | ||
| int * | count | ||
| ) |
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:| int GetSp3RelRacAbs | ( | const INChI * | pINChI, |
| INChI_Stereo * | Stereo | ||
| ) |
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:
Here is the call graph for this function:
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:| void mystrrev | ( | char * | p | ) |
Reverse a string in place.
| p | Pointer to the string to reverse |
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: