#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include <math.h>
#include <float.h>
#include <limits.h>
#include "mode.h"
#include "mol_fmt.h"
#include "ichierr.h"
#include "util.h"
#include "ichi_io.h"
#include "strutil.h"
#include "bcf_s.h"
Functions | |
static MOL_FMT_DATA * | MolfileReadDataLines (INCHI_IOSTREAM *inp_file, MOL_FMT_HEADER_BLOCK *OnlyHeaderBlock, MOL_FMT_CTAB *OnlyCTab, int bGetOrigCoord, int treat_polymers, int *err, char *pStrErr, int bNoWarnings) |
Reads header lines and connection table block from input SD or MOL file, ignore STEXT block, queries, and 3D features. | |
static int | MolfileReadHeaderLines (MOL_FMT_HEADER_BLOCK *hdr, INCHI_IOSTREAM *inp_file, char *pStrErr) |
Reads header lines from input MOL file. A MOL file can have 3 header lines: (1) the name of the molecule, (2) details about the software used and (3) a comment line. | |
static int | MolfileReadCountsLine (MOL_FMT_CTAB *ctab, INCHI_IOSTREAM *inp_file, char *pStrErr) |
Reads counts line from input MOL file, includes information about the number of atoms, bonds, and atom lists, the chiral flag setting, and the Ctab version. | |
static int | MolfileReadAtomsBlock (MOL_FMT_CTAB *ctab, INCHI_IOSTREAM *inp_file, int err, char *pStrErr) |
Reads an atom block from input MOL file (V2000). | |
static int | MolfileReadBondsBlock (MOL_FMT_CTAB *ctab, INCHI_IOSTREAM *inp_file, int err, char *pStrErr) |
Reads a bond block from input MOL file (V2000) | |
static int | MolfileReadSTextBlock (const MOL_FMT_CTAB *ctab, INCHI_IOSTREAM *inp_file, int err, char *pStrErr) |
Reads a substance text block. | |
static int | MolfileReadPropBlock (MOL_FMT_CTAB *ctab, MOL_FMT_HEADER_BLOCK *pHdr, INCHI_IOSTREAM *inp_file, int treat_polymers, int err, char *pStrErr, int bNoWarnings) |
static int | MolfileReadSgroupOfPolymer (MOL_FMT_CTAB *ctab, MOL_FMT_HEADER_BLOCK *pHdr, INCHI_IOSTREAM *inp_file, char line[MOL_FMT_INPLINELEN], char *szType, char *p, int err, char *pStrErr) |
static int | MolfileTreatPseudoElementAtoms (MOL_FMT_CTAB *ctab, int pseudos_allowed, int *err, char *pStrErr) |
MOL_FMT_DATA * | ReadMolfile (INCHI_IOSTREAM *inp_file, MOL_FMT_HEADER_BLOCK *OnlyHeaderBlock, MOL_FMT_CTAB *OnlyCTab, int bGetOrigCoord, int treat_polymers, int treat_NPZz, char *pname, int lname, unsigned long *Id, const char *pSdfLabel, char *pSdfValue, int *err, char *pStrErr, int bNoWarnings) |
Read MOL file data in to data structures. | |
|
static |
Reads an atom block from input MOL file (V2000).
ctab | Connection table data structure |
inp_file | Input file |
err | Error code |
pStrErr | Error string |
|
static |
Reads a bond block from input MOL file (V2000)
ctab | Connection table data structure |
inp_file | Input file |
err | Error code |
pStrErr | Error string |
|
static |
Reads counts line from input MOL file, includes information about the number of atoms, bonds, and atom lists, the chiral flag setting, and the Ctab version.
ctab | Connection table data structure |
inp_file | Input file |
pStrErr | Error string |
|
static |
Reads header lines and connection table block from input SD or MOL file, ignore STEXT block, queries, and 3D features.
inp_file | Input file |
OnlyHeaderBlock | Output header data structure, return MOL_FMT_DATA will point to it |
OnlyCTab | Output connection table data structure, return MOL_FMT_DATA will point to it |
bGetOrigCoord | Flag to get original coordinates |
treat_polymers | Flag to treat polymers |
err | Error code |
pStrErr | Error string |
bNoWarnings | Flag to show warnings |
|
static |
Reads header lines from input MOL file. A MOL file can have 3 header lines: (1) the name of the molecule, (2) details about the software used and (3) a comment line.
hdr | Output header data structure |
inp_file | Input file |
pStrErr | Error string |
|
static |
|
static |
|
static |
Reads a substance text block.
ctab | Connection table data structure |
inp_file | Input file |
err | Error code |
pStrErr | Error string |
|
static |
MOL_FMT_DATA * ReadMolfile | ( | INCHI_IOSTREAM * | inp_file, |
MOL_FMT_HEADER_BLOCK * | OnlyHeaderBlock, | ||
MOL_FMT_CTAB * | OnlyCTab, | ||
int | bGetOrigCoord, | ||
int | treat_polymers, | ||
int | pseudos_allowed, | ||
char * | pname, | ||
int | lname, | ||
unsigned long * | Id, | ||
const char * | pSdfLabel, | ||
char * | pSdfValue, | ||
int * | err, | ||
char * | pStrErr, | ||
int | bNoWarnings | ||
) |
Read MOL file data in to data structures.
inp_file | Pointer to the input file stream. |
OnlyHeaderBlock | Pointer to the header block to read. |
OnlyCTab | Pointer to the connection table to read. |
bGetOrigCoord | Flag indicating whether to get original coordinates. |
treat_polymers | Flag indicating whether to treat polymers. |
pseudos_allowed | Flag indicating whether pseudo atoms are allowed. |
pname | Pointer to the name buffer. |
lname | Length of the name buffer. |
Id | Pointer to the ID buffer. |
pSdfLabel | Pointer to the SDF label buffer. |
pSdfValue | Pointer to the SDF value buffer. |
err | Pointer to the error code. |
pStrErr | Pointer to the error string buffer. |
bNoWarnings | Flag indicating whether to suppress warnings. |