InChI
 
Loading...
Searching...
No Matches
ichimake.h File Reference
#include "ichisize.h"
#include "ichi.h"
#include "extr_ct.h"
#include "ichicant.h"
+ Include dependency graph for ichimake.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define ITEM_DELIMETER   ","
 
#define EXTRA_SPACE   ""
 
#define COMMA_EXTRA_SPACE   ","
 
#define LEN_EXTRA_SPACE   0
 
#define CT_MODE_NO_ORPHANS   1 /* no orphans, that CT should have only atoms with neighbors */
 
#define CT_MODE_ABC_NUMBERS   2
 
#define CT_MODE_ATOM_COUNTS   4
 
#define CT_MODE_PREDECESSORS   8
 
#define CT_MODE_EQL_H_TOGETHER   16
 
#define CT_MODE_ABC_NUM_CLOSURES   32 /* in CT_MODE_ABC_NUMBERS output AB1AC2AB instead of AB-AC-A-B */
 
#define HAS_T(S)   (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms)
 
#define HAS_N(S)   (S->pINChI[TAUT_NON] && S->pINChI[TAUT_NON]->nNumberOfAtoms)
 
#define HAS_TT(S)   (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms && S->pINChI[TAUT_YES]->lenTautomer>0)
 
#define HAS_TN(S)   (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms && !S->pINChI[TAUT_YES]->lenTautomer)
 
#define HAS_NN(S)   (S->pINChI[TAUT_NON] && S->pINChI[TAUT_NON]->nNumberOfAtoms && !S->pINChI[TAUT_NON]->lenTautomer)
 
#define GET_II(M, S)
 
#define iiSTEREO   0x0001 /* stereo (sp2 or sp3) */
 
#define iiSTEREO_INV   0x0002 /* inverted stereo (sp3) */
 
#define iiNUMB   0x0004 /* numbering or inverted stereo numbering */
 
#define iiEQU   0x0008 /* equivalence info */
 
#define iitISO   0x0010 /* Isotopic */
 
#define iitNONTAUT   0x0020 /* Non-tautomeric */
 
#define iiEq2NONTAUT   0x0040 /* non-tautomeric */
 
#define iiEq2ISO   0x0080 /* isotopic */
 
#define iiEq2INV   0x0100 /* equal to inverted (stereo sp3) or to numbering of inverted stereo */
 
#define iiEmpty   0x0200 /* item is empty while in the preceding layer the item is not empty */
 

Functions

int CompareTautNonIsoPartOfINChI (const INChI *i1, const INChI *i2)
 
const char * EquString (int EquVal)
 
int FillOutINChI (INChI *pINChI, INChI_Aux *pINChI_Aux, int num_atoms, int num_at_tg, int num_removed_H, sp_ATOM *at, inp_ATOM *norm_at, CANON_STAT *pCS, CANON_GLOBALS *pCG, int bTautomeric, INCHI_MODE nUserMode, char *pStrErrStruct, int bNoWarnings)
 
int MakeHillFormulaString (char *szHillFormula, INCHI_IOS_STRING *strbuf, int *bOverflow)
 
int bHasOrigInfo (ORIG_INFO *OrigInfo, int num_atoms)
 
int EqlOrigInfo (INChI_Aux *a1, INChI_Aux *a2)
 
int MakeAbcNumber (char *szString, int nStringLen, const char *szLeadingDelim, int nValue)
 
int MakeDecNumber (char *szString, int nStringLen, const char *szLeadingDelim, int nValue)
 
int MakeCtStringNew (CANON_GLOBALS *pCG, AT_NUMB *LinearCT, int nLenCT, int bAddDelim, S_CHAR *nNum_H, int num_atoms, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeCtStringOld (AT_NUMB *LinearCT, int nLenCT, int bAddDelim, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeCtString (CANON_GLOBALS *pCG, AT_NUMB *LinearCT, int nLenCT, int bAddDelim, S_CHAR *nNum_H, int num_atoms, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeTautString (AT_NUMB *LinearCT, int nLenCT, int bAddDelim, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeEquString (AT_NUMB *LinearCT, int nLenCT, int bAddDelim, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeIsoAtomString (INChI_IsotopicAtom *IsotopicAtom, int nNumberOfIsotopicAtoms, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeIsoTautString (INChI_IsotopicTGroup *IsotopicTGroup, int nNumberOfIsotopicTGroups, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeIsoHString (int num_iso_H[], INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeStereoString (AT_NUMB *at1, AT_NUMB *at2, S_CHAR *parity, int bAddDelim, int nLenCT, INCHI_IOS_STRING *buf, int nCtMode, int *bOverflow)
 
int MakeEnhStereoString (INChI_Aux *pAux, INCHI_IOS_STRING *strbuf, const char *conf_stereo_string, int **enh_stereo, int nof_stereo_groups, int nCtMode, int *bOverflow)
 Creates the enhanced stereochemistry string for the s - layer.
 
int MakeSlayerString (ORIG_ATOM_DATA *orig_inp_data, INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int bOutType, int num_components, int nCtMode, int *bOverflow)
 Creates the string for the s - layer based on the enhanced stereochemistry information.
 
int MakeCRVString (ORIG_INFO *OrigInfo, int nLenCT, int bAddDelim, INCHI_IOS_STRING *strbuf, int nCtMode, int *bOverflow)
 
int MakeMult (int mult, const char *szTailingDelim, INCHI_IOS_STRING *buf, int nCtMode, int *bOverflow)
 
int MakeDelim (const char *szTailingDelim, INCHI_IOS_STRING *buf, int *bOverflow)
 Adds the delimiter to the string buffer if it is not empty and there is no overflow.
 
int MakeEqStr (const char *szTailingDelim, int mult, INCHI_IOS_STRING *buf, int *bOverflow)
 
int MakeHString (int bAddDelim, S_CHAR *LinearCT, int nLenCT, INCHI_IOS_STRING *buf, int nCtMode, int *bOverflow)
 
AT_NUMBGetDfsOrder4CT (CANON_GLOBALS *pCG, AT_NUMB *LinearCT, int nLenCT, S_CHAR *nNum_H, int num_atoms, int nCtMode)
 
int str_HillFormula (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int num_components, int bUseMulipliers)
 
int str_HillFormula2 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int num_components, int bUseMulipliers)
 
int str_Connections (CANON_GLOBALS *pCG, INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int ATOM_MODE, int num_components, int bUseMulipliers)
 
int str_H_atoms (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int ATOM_MODE, int TAUT_MODE, int num_components, int bUseMulipliers)
 
int str_Charge2 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_Sp2 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 Produce double bond stereo substring of the whole structure InChI string.
 
int str_IsoSp2 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_Sp3 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bRelRac, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 Produce tetrahedral stereo substring of the whole structure InChI string.
 
int str_IsoSp3 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bRelRac, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_StereoAbsInv (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int num_components)
 Output absolute stereo inversion substring of the whole structure InChI string.
 
int str_IsoStereoAbsInv (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int num_components)
 
int str_IsoAtoms (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bAbcNumbers, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_FixedH_atoms (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int ATOM_MODE, int num_components, int bUseMulipliers)
 
int str_AuxNumb (CANON_GLOBALS *pCG, INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions)
 
int str_AuxEqu (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_AuxTgroupEqu (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bUseMulipliers)
 
int str_AuxIsoTgroupEqu (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bOmitRepetitions, int bUseMulipliers)
 
int str_AuxInvSp3 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_AuxInvSp3Numb (CANON_GLOBALS *pCG, INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions)
 
int str_AuxIsoNumb (CANON_GLOBALS *pCG, INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions)
 
int str_AuxIsoEqu (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_AuxInvIsoSp3 (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions, int bUseMulipliers)
 
int str_AuxInvIsoSp3Numb (CANON_GLOBALS *pCG, INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bSecondNonTautPass, int bOmitRepetitions)
 
int str_AuxChargeRadVal (INCHI_SORT *pINChISort, INCHI_IOS_STRING *strbuf, int *bOverflow, int bOutType, int TAUT_MODE, int num_components, int bUseMulipliers)
 
int bin_AuxTautTrans (INCHI_SORT *pINChISort, INCHI_SORT *pINChISort2, AT_NUMB **pTrans_n, AT_NUMB **pTrans_s, int bOutType, int num_components)
 
int str_AuxTautTrans (CANON_GLOBALS *pCG, AT_NUMB *nTrans_n, AT_NUMB *nTrans_s, INCHI_IOS_STRING *strbuf, int *bOverflow, int TAUT_MODE, int num_components)
 
int MergeZzInHillFormula (INCHI_IOS_STRING *strbuf)
 

Variables

const char sCompDelim []
 

Macro Definition Documentation

◆ COMMA_EXTRA_SPACE

#define COMMA_EXTRA_SPACE   ","

◆ CT_MODE_ABC_NUM_CLOSURES

#define CT_MODE_ABC_NUM_CLOSURES   32 /* in CT_MODE_ABC_NUMBERS output AB1AC2AB instead of AB-AC-A-B */

◆ CT_MODE_ABC_NUMBERS

#define CT_MODE_ABC_NUMBERS   2

◆ CT_MODE_ATOM_COUNTS

#define CT_MODE_ATOM_COUNTS   4

◆ CT_MODE_EQL_H_TOGETHER

#define CT_MODE_EQL_H_TOGETHER   16

◆ CT_MODE_NO_ORPHANS

#define CT_MODE_NO_ORPHANS   1 /* no orphans, that CT should have only atoms with neighbors */

◆ CT_MODE_PREDECESSORS

#define CT_MODE_PREDECESSORS   8

◆ EXTRA_SPACE

#define EXTRA_SPACE   ""

◆ GET_II

#define GET_II (   M,
 
)
Value:
((M==OUT_N1)? (HAS_TN(S)? TAUT_YES : HAS_NN(S)? TAUT_NON : -1): \
(M==OUT_T1 || M==OUT_TN)? (HAS_T(S) ? TAUT_YES : HAS_N(S) ? TAUT_NON : -1): \
(M==OUT_NN)? (HAS_NN(S)? TAUT_NON : HAS_TN(S)? TAUT_YES : -1): \
(M==OUT_NT)? ((HAS_TT(S) && HAS_NN(S)) ? TAUT_NON : -1) : -1)
#define HAS_T(S)
Definition ichimake.h:70
#define HAS_TT(S)
Definition ichimake.h:75
#define HAS_TN(S)
Definition ichimake.h:77
#define HAS_NN(S)
Definition ichimake.h:79
#define HAS_N(S)
Definition ichimake.h:72
#define OUT_NT
Definition mode.h:604
#define OUT_N1
Definition mode.h:602
#define OUT_TN
Definition mode.h:605
#define OUT_NN
Definition mode.h:606
#define OUT_T1
Definition mode.h:603
#define TAUT_NON
Definition mode.h:596
#define TAUT_YES
Definition mode.h:597

◆ HAS_N

#define HAS_N (   S)    (S->pINChI[TAUT_NON] && S->pINChI[TAUT_NON]->nNumberOfAtoms)

◆ HAS_NN

#define HAS_NN (   S)    (S->pINChI[TAUT_NON] && S->pINChI[TAUT_NON]->nNumberOfAtoms && !S->pINChI[TAUT_NON]->lenTautomer)

◆ HAS_T

#define HAS_T (   S)    (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms)

◆ HAS_TN

#define HAS_TN (   S)    (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms && !S->pINChI[TAUT_YES]->lenTautomer)

◆ HAS_TT

#define HAS_TT (   S)    (S->pINChI[TAUT_YES] && S->pINChI[TAUT_YES]->nNumberOfAtoms && S->pINChI[TAUT_YES]->lenTautomer>0)

◆ iiEmpty

#define iiEmpty   0x0200 /* item is empty while in the preceding layer the item is not empty */

◆ iiEq2INV

#define iiEq2INV   0x0100 /* equal to inverted (stereo sp3) or to numbering of inverted stereo */

◆ iiEq2ISO

#define iiEq2ISO   0x0080 /* isotopic */

◆ iiEq2NONTAUT

#define iiEq2NONTAUT   0x0040 /* non-tautomeric */

◆ iiEQU

#define iiEQU   0x0008 /* equivalence info */

◆ iiNUMB

#define iiNUMB   0x0004 /* numbering or inverted stereo numbering */

◆ iiSTEREO

#define iiSTEREO   0x0001 /* stereo (sp2 or sp3) */

◆ iiSTEREO_INV

#define iiSTEREO_INV   0x0002 /* inverted stereo (sp3) */

◆ iitISO

#define iitISO   0x0010 /* Isotopic */

◆ iitNONTAUT

#define iitNONTAUT   0x0020 /* Non-tautomeric */

◆ ITEM_DELIMETER

#define ITEM_DELIMETER   ","

◆ LEN_EXTRA_SPACE

#define LEN_EXTRA_SPACE   0

Function Documentation

◆ bHasOrigInfo()

int bHasOrigInfo ( ORIG_INFO OrigInfo,
int  num_atoms 
)
+ Here is the caller graph for this function:

◆ bin_AuxTautTrans()

int bin_AuxTautTrans ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
AT_NUMB **  pTrans_n,
AT_NUMB **  pTrans_s,
int  bOutType,
int  num_components 
)
+ Here is the caller graph for this function:

◆ CompareTautNonIsoPartOfINChI()

int CompareTautNonIsoPartOfINChI ( const INChI i1,
const INChI i2 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EqlOrigInfo()

int EqlOrigInfo ( INChI_Aux a1,
INChI_Aux a2 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ EquString()

const char * EquString ( int  EquVal)
+ Here is the caller graph for this function:

◆ FillOutINChI()

int FillOutINChI ( INChI pINChI,
INChI_Aux pINChI_Aux,
int  num_atoms,
int  num_at_tg,
int  num_removed_H,
sp_ATOM at,
inp_ATOM norm_at,
CANON_STAT pCS,
CANON_GLOBALS pCG,
int  bTautomeric,
INCHI_MODE  nUserMode,
char *  pStrErrStruct,
int  bNoWarnings 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetDfsOrder4CT()

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:

◆ MakeAbcNumber()

int MakeAbcNumber ( char *  szString,
int  nStringLen,
const char *  szLeadingDelim,
int  nValue 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeCRVString()

int MakeCRVString ( ORIG_INFO OrigInfo,
int  nLenCT,
int  bAddDelim,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeCtString()

int MakeCtString ( CANON_GLOBALS pCG,
AT_NUMB LinearCT,
int  nLenCT,
int  bAddDelim,
S_CHAR nNum_H,
int  num_atoms,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeCtStringNew()

int MakeCtStringNew ( CANON_GLOBALS pCG,
AT_NUMB LinearCT,
int  nLenCT,
int  bAddDelim,
S_CHAR nNum_H,
int  num_atoms,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeCtStringOld()

int MakeCtStringOld ( AT_NUMB LinearCT,
int  nLenCT,
int  bAddDelim,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeDecNumber()

int MakeDecNumber ( char *  szString,
int  nStringLen,
const char *  szLeadingDelim,
int  nValue 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeDelim()

int MakeDelim ( const char *  szTailingDelim,
INCHI_IOS_STRING buf,
int *  bOverflow 
)

Adds the delimiter to the string buffer if it is not empty and there is no overflow.

Parameters
szTailingDelimPointer to the trailing delimiter string
bufPointer to the output string buffer
bOverflowPointer to overflow flag
Returns
Returns the number of characters added to the buffer, or 0 if the delimiter is empty or there is an overflow
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeEnhStereoString()

int MakeEnhStereoString ( INChI_Aux pAux,
INCHI_IOS_STRING strbuf,
const char *  conf_stereo_string,
int **  enh_stereo,
int  nof_stereo_groups,
int  nCtMode,
int *  bOverflow 
)

Creates the enhanced stereochemistry string for the s - layer.

Parameters
pAuxPointer to the INCHI_AUX structure.
conf_stereo_stringPointer to the configuration stereochemistry string (abs, rel, rac).
enh_stereoPointer to list of enhanced stereochemistry groups.
nof_stereo_groupsNumber of enhanced stereochemistry groups.
strbufPointer to the output string buffer.
nCtModeMode flag for string representation.
bOverflowPointer to overflow flag.
Returns
Returns the length of the created string.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeEqStr()

int MakeEqStr ( const char *  szTailingDelim,
int  mult,
INCHI_IOS_STRING buf,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeEquString()

int MakeEquString ( AT_NUMB LinearCT,
int  nLenCT,
int  bAddDelim,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeHillFormulaString()

int MakeHillFormulaString ( char *  szHillFormula,
INCHI_IOS_STRING strbuf,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeHString()

int MakeHString ( int  bAddDelim,
S_CHAR LinearCT,
int  nLenCT,
INCHI_IOS_STRING buf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeIsoAtomString()

int MakeIsoAtomString ( INChI_IsotopicAtom IsotopicAtom,
int  nNumberOfIsotopicAtoms,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeIsoHString()

int MakeIsoHString ( int  num_iso_H[],
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeIsoTautString()

int MakeIsoTautString ( INChI_IsotopicTGroup IsotopicTGroup,
int  nNumberOfIsotopicTGroups,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeMult()

int MakeMult ( int  mult,
const char *  szTailingDelim,
INCHI_IOS_STRING buf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeSlayerString()

int MakeSlayerString ( ORIG_ATOM_DATA orig_inp_data,
INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int  bOutType,
int  num_components,
int  nCtMode,
int *  bOverflow 
)

Creates the string for the s - layer based on the enhanced stereochemistry information.

Parameters
orig_inp_dataPointer to the original atom data.
pINChISortPointer to the INCHI_SORT structure.
bOutTypeOutput type flag.
num_componentsNumber of components in the molecule.
strbufPointer to the output string buffer.
nCtModeMode flag for string representation.
bOverflowPointer to overflow flag.
Returns
Returns the length of the created string.
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeStereoString()

int MakeStereoString ( AT_NUMB at1,
AT_NUMB at2,
S_CHAR parity,
int  bAddDelim,
int  nLenCT,
INCHI_IOS_STRING buf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MakeTautString()

int MakeTautString ( AT_NUMB LinearCT,
int  nLenCT,
int  bAddDelim,
INCHI_IOS_STRING strbuf,
int  nCtMode,
int *  bOverflow 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ MergeZzInHillFormula()

int MergeZzInHillFormula ( INCHI_IOS_STRING strbuf)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxChargeRadVal()

int str_AuxChargeRadVal ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxEqu()

int str_AuxEqu ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxInvIsoSp3()

int str_AuxInvIsoSp3 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxInvIsoSp3Numb()

int str_AuxInvIsoSp3Numb ( CANON_GLOBALS pCG,
INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxInvSp3()

int str_AuxInvSp3 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxInvSp3Numb()

int str_AuxInvSp3Numb ( CANON_GLOBALS pCG,
INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxIsoEqu()

int str_AuxIsoEqu ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxIsoNumb()

int str_AuxIsoNumb ( CANON_GLOBALS pCG,
INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxIsoTgroupEqu()

int str_AuxIsoTgroupEqu ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxNumb()

int str_AuxNumb ( CANON_GLOBALS pCG,
INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxTautTrans()

int str_AuxTautTrans ( CANON_GLOBALS pCG,
AT_NUMB nTrans_n,
AT_NUMB nTrans_s,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  TAUT_MODE,
int  num_components 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_AuxTgroupEqu()

int str_AuxTgroupEqu ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_Charge2()

int str_Charge2 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_Connections()

int str_Connections ( CANON_GLOBALS pCG,
INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  ATOM_MODE,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_FixedH_atoms()

int str_FixedH_atoms ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  ATOM_MODE,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_H_atoms()

int str_H_atoms ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  ATOM_MODE,
int  TAUT_MODE,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_HillFormula()

int str_HillFormula ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_HillFormula2()

int str_HillFormula2 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  num_components,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_IsoAtoms()

int str_IsoAtoms ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bAbcNumbers,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_IsoSp2()

int str_IsoSp2 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_IsoSp3()

int str_IsoSp3 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bRelRac,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_IsoStereoAbsInv()

int str_IsoStereoAbsInv ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  num_components 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_Sp2()

int str_Sp2 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)

Produce double bond stereo substring of the whole structure InChI string.

Parameters
pINChISortPointer to the primary INCHI_SORT structure containing input data.
pINChISort2Pointer to the secondary INCHI_SORT structure, used for comparison or additional data.
strbufPointer to an INCHI_IOS_STRING buffer where the output string will be stored.
bOverflowPointer to an integer flag that will be set if the output overflows the buffer.
bOutTypeOutput type flag specifying the format or type of output.
TAUT_MODETautomer mode flag indicating how tautomers are handled.
num_componentsNumber of components to process.
bSecondNonTautPassFlag indicating if this is the second pass for non-tautomeric processing.
bOmitRepetitionsFlag to omit repeated entries in the output.
bUseMulipliersFlag to use multipliers in the output representation.
Returns
Returns number of characters written to strbuf
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_Sp3()

int str_Sp3 ( INCHI_SORT pINChISort,
INCHI_SORT pINChISort2,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  TAUT_MODE,
int  num_components,
int  bRelRac,
int  bSecondNonTautPass,
int  bOmitRepetitions,
int  bUseMulipliers 
)

Produce tetrahedral stereo substring of the whole structure InChI string.

Parameters
pINChISortPointer to the primary INCHI_SORT structure containing input data.
pINChISort2Pointer to the secondary INCHI_SORT structure, used for comparison or additional data.
strbufPointer to an INCHI_IOS_STRING buffer where the output string will be stored.
bOverflowPointer to an integer flag that will be set if the output overflows the buffer.
bOutTypeOutput type flag specifying the format or type of output.
TAUT_MODETautomer mode flag indicating how tautomers are handled.
num_componentsThe number of components to process.
bRelRacFlag for relative or racemic stereochemistry.
bSecondNonTautPassFlag indicating if this is the second pass for non-tautomeric processing.
bOmitRepetitionsFlag to omit repeated entries in the output.
bUseMulipliersFlag to use multipliers in the output representation.
Returns
int
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ str_StereoAbsInv()

int str_StereoAbsInv ( INCHI_SORT pINChISort,
INCHI_IOS_STRING strbuf,
int *  bOverflow,
int  bOutType,
int  num_components 
)

Output absolute stereo inversion substring of the whole structure InChI string.

Parameters
pINChISortPointer to INCHI_SORT array
strbufPointer to string buffer
bOverflowOverflow flag
bOutTypeOutput type
num_componentsNumber of connected components
Returns
Length of the added substring (return value '0', '1', or '.' in strbuf)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ sCompDelim

const char sCompDelim[]
extern