InChI
 
Loading...
Searching...
No Matches
readinch.c File Reference
#include <stdlib.h>
#include <limits.h>
#include <math.h>
#include <float.h>
#include <string.h>
#include <ctype.h>
#include "mode.h"
#include "ichierr.h"
#include "extr_ct.h"
#include "ichi_io.h"
#include "inchi_api.h"
#include "readinch.h"
#include "bcf_s.h"
+ Include dependency graph for readinch.c:

Macros

#define NO_ATOM   (-1) /* non-existent (central) atom */
 
#define AT_BONDS_VAL(AT, I)   AT[I].chem_bonds_valence
 
#define ISOLATED_ATOM   15
 
#define NUM_ISO_Hk(AT, I, K)   AT[I].num_iso_H[K]
 
#define inchi_NUMH2(AT, N)   NUMH(AT,N)
 
#define AT_NUM_BONDS(AT)   (AT).valence
 
#define IS_METAL_ATOM(AT, I)   is_el_a_metal( AT[I].el_number )
 
#define MAX_CHAIN_LEN   20
 

Functions

void find_and_interpret_structure_header (char *szLine, char *pSdfLabel, char *pSdfValue, unsigned long *Id, int hlen, ReadINCHI_CtlData *ir)
 
inchi_Stereo0DCreateInchi_Stereo0D (int num_stereo0D)
 
void FreeInchi_Stereo0D (inchi_Stereo0D **stereo0D)
 
int Extract0DParities (inp_ATOM *at, int nNumAtoms, inchi_Stereo0D *stereo0D, int num_stereo0D, char *pStrErr, int *err, int vABParityUnknown)
 
char * FindToken (INCHI_IOSTREAM *inp_file, int *bTooLongLine, const char *sToken, int lToken, char *szLine, int nLenLine, char *p, int *res)
 
char * LoadLine (INCHI_IOSTREAM *inp_file, int *bTooLongLine, int *bItemIsOver, char **s, char *szLine, int nLenLine, int nMinLen2Load, char *p, int *res)
 
int InchiToInpAtom (INCHI_IOSTREAM *inp_file, MOL_COORD **szCoord, int bDoNotAddH, int vABParityUnknown, INPUT_TYPE nInputType, inp_ATOM **at, int max_num_at, int *num_dimensions, int *num_bonds, char *pSdfLabel, char *pSdfValue, unsigned long *Id, INCHI_MODE *pInpAtomFlags, int *err, char *pStrErr)
 

Variables

char szLine_i2i [INCHI_LINE_LEN]
 

Macro Definition Documentation

◆ AT_BONDS_VAL

#define AT_BONDS_VAL (   AT,
 
)    AT[I].chem_bonds_valence

◆ AT_NUM_BONDS

#define AT_NUM_BONDS (   AT)    (AT).valence

◆ inchi_NUMH2

#define inchi_NUMH2 (   AT,
 
)    NUMH(AT,N)

◆ IS_METAL_ATOM

#define IS_METAL_ATOM (   AT,
 
)    is_el_a_metal( AT[I].el_number )

◆ ISOLATED_ATOM

#define ISOLATED_ATOM   15

◆ MAX_CHAIN_LEN

#define MAX_CHAIN_LEN   20

◆ NO_ATOM

#define NO_ATOM   (-1) /* non-existent (central) atom */

◆ NUM_ISO_Hk

#define NUM_ISO_Hk (   AT,
  I,
 
)    AT[I].num_iso_H[K]

Function Documentation

◆ CreateInchi_Stereo0D()

inchi_Stereo0D * CreateInchi_Stereo0D ( int  num_stereo0D)
+ Here is the caller graph for this function:

◆ Extract0DParities()

int Extract0DParities ( inp_ATOM at,
int  nNumAtoms,
inchi_Stereo0D stereo0D,
int  num_stereo0D,
char *  pStrErr,
int *  err,
int  vABParityUnknown 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ find_and_interpret_structure_header()

void find_and_interpret_structure_header ( char *  szLine,
char *  pSdfLabel,
char *  pSdfValue,
unsigned long *  Id,
int  hlen,
ReadINCHI_CtlData ir 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FindToken()

char * FindToken ( INCHI_IOSTREAM inp_file,
int *  bTooLongLine,
const char *  sToken,
int  lToken,
char *  szLine,
int  nLenLine,
char *  p,
int *  res 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ FreeInchi_Stereo0D()

void FreeInchi_Stereo0D ( inchi_Stereo0D **  stereo0D)
+ Here is the caller graph for this function:

◆ InchiToInpAtom()

int InchiToInpAtom ( INCHI_IOSTREAM inp_file,
MOL_COORD **  szCoord,
int  bDoNotAddH,
int  vABParityUnknown,
INPUT_TYPE  nInputType,
inp_ATOM **  at,
int  max_num_at,
int *  num_dimensions,
int *  num_bonds,
char *  pSdfLabel,
char *  pSdfValue,
unsigned long *  Id,
INCHI_MODE pInpAtomFlags,
int *  err,
char *  pStrErr 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ LoadLine()

char * LoadLine ( INCHI_IOSTREAM inp_file,
int *  bTooLongLine,
int *  bItemIsOver,
char **  s,
char *  szLine,
int  nLenLine,
int  nMinLen2Load,
char *  p,
int *  res 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ szLine_i2i

char szLine_i2i[INCHI_LINE_LEN]