50#define CLOSING_STARRED_SRU_IS_A_MUST 1 
   51#define ALLOW_CLOSING_SRU_VIA_HIGHER_ORDER_BOND 1 
   52#define ALLOW_CLOSING_SRU_VIA_DIRADICAL 1 
   54#define CLOSING_SRU_NOT_APPLICABLE 0 
   55#define CLOSING_SRU_RING 1 
   56#define CLOSING_SRU_HIGHER_ORDER_BOND 2 
   57#define CLOSING_SRU_DIRADICAL 3 
   58#define CLOSING_SRU_RING_OPENED 4 
   59#define CLOSING_SRU_MOVED_BRACKETS 5 
   61#define bDrawingLabelLeftShift endpoint  
   65#define ATT_NONE 0x0000 
   66#define ATT_ACIDIC_CO 0x0001 
   67#define ATT_ACIDIC_S 0x0002 
   72#define ATT_ATOM_N 0x0040 
   73#define ATT_ATOM_P 0x0080 
   74#define ATT_OTHER_NEG_O 0x0100 
   75#define ATT_OTHER_ZO 0x0200  
   76#define ATT_OH_MINUS 0x0400  
   77#define ATT_O_PLUS 0x0800    
   78#define ATT_PROTON 0x1000 
   79#define ATT_HalAnion 0x2000 
   80#define ATT_HalAcid 0x4000 
   81#if (FIX_NP_MINUS_BUG == 1) 
   82#define ATT_NP_MINUS_V23 0x8000  
   85#define AT_FLAG_ISO_H_POINT 0x01  
   87#define PERIODIC_NUMBER_H 1 
   90#define NUM_ISO_H(AT, N) (AT[N].num_iso_H[0] + AT[N].num_iso_H[1] + AT[N].num_iso_H[2]) 
   91#define NUMH(AT, N) (AT[N].num_H + NUM_ISO_H(AT, N)) 
   97#define SB_PARITY_FLAG 0x38  
   98#define SB_PARITY_SHFT 3     
   99#define SB_PARITY_MASK 0x07 
  100#define SB_PARITY_1(X) (X & SB_PARITY_MASK)                        
  101#define SB_PARITY_2(X) (((X) >> SB_PARITY_SHFT) & SB_PARITY_MASK)  
  187#if (FIND_RING_SYSTEMS == 1) 
  193#if (FIND_RINS_SYSTEMS_DISTANCES == 1) 
 
  207#define POLYMER_REPRESENTATION_SOURCE_BASED 1 
  208#define POLYMER_REPRESENTATION_STRUCTURE_BASED 2 
  209#define POLYMER_REPRESENTATION_MIXED 3 
  210#define POLYMER_REPRESENTATION_UNRECOGNIZED 4 
  212#define ALLOW_MIXED_SRU_AND_MON 1  
  214#define POLYMER_STY_NON 0 
  215#define POLYMER_STY_SRU 1  
  216#define POLYMER_STY_MON 2  
  217#define POLYMER_STY_COP 3  
  218#define POLYMER_STY_MOD 4  
  219#define POLYMER_STY_CRO 5  
  220#define POLYMER_STY_MER 6  
  222#define POLYMER_SST_NON 0 
  223#define POLYMER_SST_ALT 1 
  224#define POLYMER_SST_RAN 2 
  225#define POLYMER_SST_BLK 3 
  227#define POLYMER_CONN_NON 0 
  228#define POLYMER_CONN_HT 1 
  229#define POLYMER_CONN_HH 2 
  230#define POLYMER_CONN_EU 3 
  445#if (bRELEASE_VERSION == 0) 
 
  518#ifdef DISPLAY_DEBUG_DATA 
 
  528#define INF_STEREO_ABS 0x0001 
  529#define INF_STEREO_REL 0x0002 
  530#define INF_STEREO_RAC 0x0004 
  531#define INF_STEREO_NORM 0x0008 
  532#define INF_STEREO_INV 0x0010 
  533#define INF_STEREO 0x0020 
  534#define INF_STEREO_ABS_REL_RAC (INF_STEREO_ABS | INF_STEREO_REL | INF_STEREO_RAC) 
  535#define INF_STEREO_NORM_INV (INF_STEREO_NORM | INF_STEREO_INV) 
  537#define MAX_LEN_REMOVED_PROTONS 128 
  671#define ADD_LEN_STRUCT_FPTRS 100  
  696#ifndef __ICHITIME_H__ 
  702#define FLAG_INP_AT_CHIRAL 1 
  703#define FLAG_INP_AT_NONCHIRAL 2 
  704#define FLAG_SET_INP_AT_CHIRAL 4 
  705#define FLAG_SET_INP_AT_NONCHIRAL 8 
  706#define FLAG_SET_INP_LARGE_MOLS 16 
  708#ifndef COMPILE_ALL_CPP 
  737                                     const char *pSdfLabel, 
char *pSdfValue, 
unsigned long *lSdfId, 
long *lMolfileNumber, 
INCHI_MODE *pInpAtomFlags, 
int *err, 
char *pStrErr, 
int bNoWarnings);
 
  758                        char *pSdfValue, 
unsigned long *lSdfId, 
INCHI_MODE *pInpAtomFlags, 
int *err, 
char *pStrErr);
 
  989#if (UNDERIVATIZE == 1) 
 1226    OAD_PolymerUnit *
OAD_PolymerUnit_New(
int maxatoms, 
int maxbonds, 
int id, 
int label, 
int type, 
int subtype, 
int conn, 
char *smt, 
int na, 
INT_ARRAY *alist, 
int nb, 
INT_ARRAY *blist, 
int nbkbonds,
 
 1495#ifndef COMPILE_ANSI_ONLY 
 1506    void PrintFileName(
const char *fmt, FILE *out_file, 
const char *szFname);
 
 1525#ifndef COMPILE_ALL_CPP 
#define ATOM_EL_LEN
Definition ichicant.h:97
 
#define MAXVAL
Definition ichicant.h:95
 
enum tagInputType INPUT_TYPE
 
unsigned short AT_NUMB
Definition ichisize.h:45
 
signed short NUM_H
Definition ichisize.h:49
 
unsigned long INCHI_MODE
Definition ichisize.h:60
 
char MOL_COORD[LEN_COORD *NUM_COORD+NUM_COORD - 1]
Definition ichisize.h:64
 
signed char S_CHAR
Definition inchi_api.h:113
 
#define NUM_H_ISOTOPES
Definition inchi_api.h:107
 
unsigned char U_CHAR
Definition inchi_api.h:114
 
#define INCHI_NUM
Definition inchi_api.h:1179
 
#define MAX_NUM_STEREO_BONDS
Definition inchi_api.h:1176
 
signed short S_SHORT
Definition inchi_api.h:119
 
#define MAX_NUM_STEREO_ATOM_NEIGH
Definition inchi_api.h:1173
 
#define ATOM_INFO_LEN
Definition incomdef.h:57
 
#define MAX_STEREO_BONDS
Definition incomdef.h:59
 
int OAD_PolymerUnit_SetReopeningDetails(OAD_PolymerUnit *u, inp_ATOM *at)
Set reopening details for a polymer unit.
Definition runichi3.c:3986
 
int bFoundFeature(inp_ATOM *at, int num_atoms)
Check if a feature is found in the input atoms ???
 
int OAD_Edit_Underivatize(struct tagINCHI_CLOCK *ic, struct tagCANON_GLOBALS *pCG, ORIG_ATOM_DATA *orig_inp_data, int bOutputSdf, int bOutputReport, char *pSdfValue)
Underivatize the original atom data (main underivatization procedure)
Definition ichinorm.c:5936
 
int CreateOrigInpDataFromMolfile(INCHI_IOSTREAM *inp_file, ORIG_ATOM_DATA *orig_at_data, int bMergeAllInputStructures, int bGetOrigCoord, int bDoNotAddH, int treat_polymers, int treat_NPZz, const char *pSdfLabel, char *pSdfValue, unsigned long *lSdfId, long *lMolfileNumber, INCHI_MODE *pInpAtomFlags, int *err, char *pStrErr, int bNoWarnings)
Create original input data from molfile.
Definition mol2atom.c:111
 
OAD_PolymerUnit * OAD_PolymerUnit_New(int maxatoms, int maxbonds, int id, int label, int type, int subtype, int conn, char *smt, int na, INT_ARRAY *alist, int nb, INT_ARRAY *blist, int nbkbonds, int **bkbonds)
Create a new polymer unit.
Definition runichi3.c:1143
 
struct tagAtomParmsForDrawing inf_ATOM
Structure describing atom parameters for drawing.
 
void FreeInfoAtomData(INF_ATOM_DATA *inf_at_data)
Free information atom data.
 
void OAD_Polymer_SmartReopenCyclizedUnits(OAD_Polymer *p, inp_ATOM *at, int nat, int *num_inp_bonds)
Smartly reopen cyclized units in the original atom data (open pre-cyclized CRUs appropriately (i....
Definition runichi3.c:3857
 
int FixAdjacentRadicals(int num_inp_atoms, inp_ATOM *at)
Fix adjacent radicals in the input atoms.
 
int OAD_Polymer_CyclizeCloseableUnits(ORIG_ATOM_DATA *orig_at_data, int use_zz, char *pStrErr, int bNoWarnings)
Cyclize closeable units in the original atom data.
Definition runichi3.c:1959
 
struct tagOAD_StructureEdits OAD_StructureEdits
Structure describing structure edits.
 
void OAD_PolymerUnit_SortBackboneBonds(OAD_PolymerUnit *u, OAD_AtProps *aprops, int *bnum)
Collect backbone bonds from a polymer unit and sort them.
Definition runichi3.c:4076
 
void OAD_ValidateAndSortOutPseudoElementAtoms(ORIG_ATOM_DATA *orig_at_data, int treat_polymers, int use_zz, int *err, char *pStrErr)
Validate and sort out pseudo-element atoms in the original atom data.
Definition runichi3.c:4375
 
int OAD_CollectReachableAtoms(ORIG_ATOM_DATA *orig_at_data, int start_atom, int nforbidden_bonds, int *forbidden_bonds, int *n_reachable, int *reachable, int *err, char *pStrErr)
Find reachable atoms from a given start atom.
Definition runichi3.c:2998
 
void FreeInpAtomData(INP_ATOM_DATA *inp_at_data)
Free input atom data.
Definition mol2atom.c:1075
 
struct tagInputAtom inp_ATOM
Structure describing an input atom.
 
struct tagInfoAtomData INF_ATOM_DATA
Structure describing information about atoms for InChI generation.
 
struct tagOriginalStruct ORIG_STRUCT
Structure describing original structure.
 
int OAD_Polymer_CompareRanksOfTwoAtoms(int atom1, int atom2, OAD_AtProps *aprops)
Compare ranks of two atoms (compare seniority of two atoms in polymer SRU)
Definition runichi3.c:4188
 
int post_fix_odd_things(int num_atoms, inp_ATOM *at)
Post-fix odd things in the input atoms (does nothing, returns 0)
Definition strutil.c:915
 
INP_ATOM_DATA INP_ATOM_DATA2[TAUT_NUM]
Definition inpdef.h:610
 
inp_ATOM * CreateInpAtom(int num_atoms)
Create/allocate a Inp Atom object.
Definition mol2atom.c:1054
 
int AllocateInfoAtomData(INF_ATOM_DATA *inf_at_data, int num_atoms, int num_components)
Allocate memory for Info Atom Data object.
 
int DuplicateInfoAtomData(INF_ATOM_DATA *inf_at_data_to, const INF_ATOM_DATA *inf_at_data_from)
Duplicate Info Atom Data object.
 
int CreateInfoAtomData(INF_ATOM_DATA *inf_at_data, int num_atoms, int num_components)
Create a Info Atom Data object.
 
int DisconnectMetals(ORIG_ATOM_DATA *orig_inp_data, int bCheckMetalValence, INCHI_MODE *bTautFlagsDone)
Disconnect metals in the original atom data.
Definition strutil.c:2858
 
int fix_odd_things(int num_atoms, inp_ATOM *at, int bFixBug, int bFixNonUniformDraw)
Fix odd things in the input atoms.
Definition strutil.c:603
 
void OAD_StructureEdits_Clear(OAD_StructureEdits *ed)
Clear structure edits.
Definition runichi2.c:1769
 
int Ring2Chain(struct tagINCHI_CLOCK *ic, struct tagCANON_GLOBALS *pCG, ORIG_ATOM_DATA *orig_inp_data)
Convert rings to chains in the original atom data.
Definition ichinorm.c:7364
 
void OAD_Polymer_Free(OAD_Polymer *p)
Free polymer data structure.
Definition runichi3.c:2051
 
void OAD_Polymer_DebugTrace(OAD_Polymer *p)
Debug trace for polymer data structure (print the whole polymer data)
Definition runichi3.c:3736
 
void FreeInfAtom(inf_ATOM **at)
Free information atom array (same as FreeInpAtom)
 
void OAD_Polymer_SetAtProps(OAD_Polymer *pd, inp_ATOM *at, int nat, int *num_inp_bonds, OAD_AtProps *aprops, int *cano_nums)
Set atom properties for the polymer data.
Definition runichi3.c:3291
 
void OAD_PolymerUnit_DelistIntraRingBackboneBonds(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, int *err, char *pStrErr)
Collect backbone bonds from a polymer unit and delist intra-ring backbone bonds.
Definition runichi3.c:3147
 
void OAD_PolymerUnit_SortBackboneBondsAndSetSeniors(OAD_PolymerUnit *u, inp_ATOM *at, OAD_AtProps *aprops, int *senior_bond)
Sort backbone bonds and set seniors for a polymer unit.
Definition runichi3.c:4035
 
int InchiToOrigAtom(INCHI_IOSTREAM *infile, ORIG_ATOM_DATA *orig_at_data, int bMergeAllInputStructures, int bGetOrigCoord, int bDoNotAddH, int vABParityUnknown, INPUT_TYPE nInputType, char *pSdfLabel, char *pSdfValue, unsigned long *lSdfId, INCHI_MODE *pInpAtomFlags, int *err, char *pStrErr)
Convert InChI representation to original atom data.
Definition runichi2.c:1067
 
void OAD_StructureEdits_DebugPrint(OAD_StructureEdits *ed)
Debug print structure edits.
Definition runichi2.c:1807
 
int OAD_Polymer_IsFirstAtomRankLower(int atom1, int atom2, OAD_AtProps *aprops)
Check if the first atom has a lower rank than the second atom (check seniority of two atoms in polyme...
Definition runichi3.c:4348
 
int OAD_Polymer_PrepareFrameShiftEdits(ORIG_ATOM_DATA *orig_at_data, char *sinchi, char *saux, OAD_StructureEdits *ed)
Prepare frame shift edits for polymer data structure (prepare frame shift edits as suggested by the s...
Definition runichi2.c:2522
 
int OAD_ValidatePolymerAndPseudoElementData(ORIG_ATOM_DATA *orig_at_data, int treat_polymers, int bNPZz, char *pStrErr, int bNoWarnings)
Validate polymer and pseudo-element data in the original atom data.
Definition runichi3.c:1497
 
long INCHI_FPTR
Definition inpdef.h:673
 
int OAD_PolymerUnit_CompareAtomLists(OAD_PolymerUnit *u1, OAD_PolymerUnit *u2)
Compare two polymer units based on their atom lists.
Definition runichi3.c:1381
 
int DisconnectSalts(ORIG_ATOM_DATA *orig_inp_data, int bDisconnect)
Disconnect salts in the original atom data.
Definition strutil.c:2661
 
S_SHORT ST_CAP_FLOW
Definition inpdef.h:62
 
int MarkDisconnectedComponents(ORIG_ATOM_DATA *orig_at_data, int bProcessOldCompNumbers)
Mark disconnected components in the original atom data.
Definition strutil.c:4270
 
struct tagStructFptrs STRUCT_FPTRS
Structure describing file pointers for structures.
 
int OAD_PolymerUnit_OrderBondAtomsAndBondsThemselves(OAD_PolymerUnit *u, int n_stars, int *stars)
Order bond atoms and bonds themselves in a polymer unit.
Definition runichi3.c:1418
 
int OAD_StructureEdits_Init(OAD_StructureEdits *ed)
Initialize structure edits.
Definition runichi2.c:1735
 
int OAD_Polymer_PrepareWorkingSet(OAD_Polymer *p, int *cano_nums, int *compnt_nums, OAD_PolymerUnit **units2, int *unum)
Prepare working set for polymer processing (replace original atom numbers in polymer data with (canon...
Definition runichi3.c:2322
 
int OAD_Polymer_GetRepresentation(OAD_Polymer *p)
Get polymer representation type.
Definition runichi3.c:3767
 
#define MAX_LEN_REMOVED_PROTONS
Definition inpdef.h:537
 
int UnMarkRingSystemsInp(inp_ATOM *at, int num_atoms)
Unmark ring systems in the input atoms.
Definition runichi3.c:1941
 
int OAD_PolymerUnit_CompareAtomListsMod(OAD_PolymerUnit *u1, OAD_PolymerUnit *u2)
Compare two polymer units based on their atom lists with modifications.
Definition runichi3.c:1358
 
int FixUnkn0DStereoBonds(inp_ATOM *at, int num_at)
Fix unknown stereo bonds in the input atoms.
Definition ichister.c:2006
 
OAD_PolymerUnit * OAD_PolymerUnit_CreateCopy(OAD_PolymerUnit *u)
Create a copy of a polymer unit.
Definition runichi3.c:1241
 
struct tagNormCanonFlags NORM_CANON_FLAGS
Structure describing normalization and canonicalization flags.
 
void OAD_PolymerUnit_DelistHighOrderBackboneBonds(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, COMP_ATOM_DATA *composite_norm_data, int *err, char *pStrErr)
Collect high-order backbone bonds from a polymer unit.
Definition runichi3.c:3488
 
void OAD_PolymerUnit_DebugTrace(OAD_PolymerUnit *unit)
Debug trace for a polymer unit (print the whole polymer unit)
Definition runichi3.c:3621
 
int bMayDisconnectMetals(ORIG_ATOM_DATA *orig_inp_data, int bCheckMetalValence, INCHI_MODE *bTautFlagsDone)
Check if metals may be disconnected in the original atom data.
Definition strutil.c:2755
 
void FreeCompAtomData(COMP_ATOM_DATA *inp_at_data)
Free composite atom data.
Definition mol2atom.c:1109
 
int OAD_Polymer_FindRingSystems(OAD_Polymer *pd, inp_ATOM *at, int nat, int *num_inp_bonds, int *num_ring_sys, int *size_ring_sys, int start)
Find ring systems in the polymer data.
Definition runichi3.c:3215
 
void OAD_PolymerUnit_ReopenCyclized(OAD_PolymerUnit *u, inp_ATOM *at, OAD_AtProps *aprops, int nat, int *num_inp_bonds)
Collect backbone atoms from a polymer unit.
Definition runichi3.c:3932
 
int CreateCompAtomData(COMP_ATOM_DATA *inp_at_data, int num_atoms, int num_components, int bIntermediateTaut)
Create a Comp Atom Data object.
Definition mol2atom.c:1125
 
struct tagCompositeAtomData COMP_ATOM_DATA
Structure describing composite atom data for InChI generation.
 
int OAD_Polymer_PrepareFoldCRUEdits(ORIG_ATOM_DATA *orig_at_data, char *sinchi_noedits, char *saux_noedits, char *sinchi, char *saux, OAD_StructureEdits *ed)
Prepare CRU edits for polymer data structure (prepare CRU fold edits as suggested by the strings with...
Definition runichi2.c:1838
 
void OAD_PolymerUnit_SetEndsAndCaps(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, int *err, char *pStrErr)
Set the ends and caps of a polymer unit.
Definition runichi3.c:2246
 
void OAD_CollectBackboneBonds(ORIG_ATOM_DATA *at_data, int na, int *alist, int end_atom1, int end_atom2, int *nbkbonds, int **bkbonds, int *err, char *pStrErr)
Collect backbone bonds from a polymer unit.
Definition runichi3.c:3088
 
void OAD_PolymerUnit_PrepareToFrameShift(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, int *err, char *pStrErr)
Prepare a polymer unit for frame shifting.
 
int bInchiTimeIsOver(struct tagINCHI_CLOCK *ic, struct tagInchiTime *TickEnd)
Definition ichicano.c:257
 
int ReconcileAllCmlBondParities(inp_ATOM *at, int num_atoms, int bDisconnected)
Reconcile all CML bond parities in the input atoms.
Definition ichister.c:4662
 
void OAD_CollectBackboneAtoms(ORIG_ATOM_DATA *at_data, int na, int *alist, int end_atom1, int end_atom2, int *nbkatoms, int *bkatoms, int *err, char *pStrErr)
Collect backbone atoms from a polymer unit.
Definition runichi3.c:2926
 
int bHasMetalAtom(ORIG_ATOM_DATA *orig_inp_data)
Check if there is a metal atom in the original atom data.
 
struct tagInputAtomData INP_ATOM_DATA
Structure describing input atom data for InChI generation.
 
void OAD_PolymerUnit_FindEndsAndCaps(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, int *end1, int *cap1, int *cap1_is_undef, int *end2, int *cap2, int *cap2_is_undef, int *err, char *pStrErr)
Find the ends and caps of a polymer unit.
Definition runichi3.c:2146
 
void PrintFileName(const char *fmt, FILE *out_file, const char *szFname)
Print the file name.
Definition strutil.c:5526
 
int OAD_PolymerUnit_HasMetal(OAD_PolymerUnit *u, inp_ATOM *at)
Check if a polymer unit has a specific atom (e.g., metal)
Definition runichi3.c:2035
 
int CreateInpAtomData(INP_ATOM_DATA *inp_at_data, int num_atoms, int create_at_fixed_bonds)
Create a Inp Atom Data object.
Definition mol2atom.c:1089
 
void OAD_Edit_MergeComponentsAndRecreateOAD(ORIG_ATOM_DATA *orig_OrigAtomData, INP_ATOM_DATA *curr_InpAtomData, int num_components, int *errcode)
Merge components and recreate original atom data.
Definition ichinorm.c:7565
 
void OAD_Polymer_FindBackbones(ORIG_ATOM_DATA *where_to_look, COMP_ATOM_DATA *composite_norm_data, int *err, char *pStrErr)
Find backbones in the original atom data.
Definition runichi3.c:2852
 
void FreeOrigAtData(ORIG_ATOM_DATA *orig_at_data)
Free original atom data.
Definition mol2atom.c:1254
 
struct tagOrigAtom ORIG_ATOM_DATA
Structure describing original atom data.
 
int remove_ion_pairs(int num_atoms, inp_ATOM *at)
Remove ion pairs from the input atoms.
Definition strutil.c:1042
 
void FreeExtOrigAtData(OAD_Polymer *pd, OAD_V3000 *v3k)
Free extended original atom data (polymers and V3000)
Definition mol2atom.c:1300
 
inf_ATOM * CreateInfAtom(int num_atoms)
Create/allocate a Inf Atom object.
 
void MySleep(unsigned long ms)
Sleep for a specified amount of time.
 
int OAD_Polymer_CompareBackboneBondsSeniority(int *b1, int *b2, OAD_AtProps *aprops)
Compare backbone bonds seniority (for sorting SRU cyclizing bonds (PS=='frame-shift') in descending o...
Definition runichi3.c:4107
 
void OAD_PolymerUnit_UnlinkCapsAndConnectEndAtoms(OAD_PolymerUnit *unit, ORIG_ATOM_DATA *orig_at_data, int *err, char *pStrErr)
Unlink caps and connect end atoms of a polymer unit.
Definition runichi3.c:2081
 
void OAD_PolymerUnit_Free(OAD_PolymerUnit *unit)
Free a polymer unit.
Definition runichi3.c:1323
 
void FreeInpAtom(inp_ATOM **at)
Free input atom array.
Definition mol2atom.c:1062
 
int OrigAtData_WriteToSDfile(const ORIG_ATOM_DATA *inp_at_data, INCHI_IOSTREAM *fcb, const char *name, const char *comment, int bChiralFlag, int bAtomsDT, const char *szLabel, const char *szValue)
Write original atom data to SD file.
Definition mol_fmt4.c:783
 
#define TAUT_NUM
Definition mode.h:593
 
Structure describing atom properties for OAD.
Definition inpdef.h:338
 
int ring_num
Definition inpdef.h:344
 
int erank
Definition inpdef.h:339
 
int ring_size
Definition inpdef.h:345
 
int ring_erank
Definition inpdef.h:341
 
Structure describing a polymer unit.
Definition inpdef.h:262
 
int nbkbonds
Definition inpdef.h:287
 
int conn
Definition inpdef.h:266
 
int label
Definition inpdef.h:267
 
double xbr2[4]
Definition inpdef.h:273
 
int representation
Definition inpdef.h:275
 
int cap2
Definition inpdef.h:280
 
int * blist
Definition inpdef.h:284
 
int * alist
Definition inpdef.h:283
 
int id
Definition inpdef.h:263
 
int cap1
Definition inpdef.h:277
 
int na
Definition inpdef.h:268
 
char smt[80]
Definition inpdef.h:274
 
int cap1_is_undef
Definition inpdef.h:281
 
int end_atom1
Definition inpdef.h:278
 
int nb
Definition inpdef.h:269
 
int cyclized
Definition inpdef.h:271
 
int end_atom2
Definition inpdef.h:279
 
int subtype
Definition inpdef.h:265
 
int cyclizable
Definition inpdef.h:270
 
int ** bkbonds
Definition inpdef.h:291
 
int maxbkbonds
Definition inpdef.h:286
 
int type
Definition inpdef.h:264
 
double xbr1[4]
Definition inpdef.h:272
 
int cap2_is_undef
Definition inpdef.h:282
 
Structure describing a polymer.
Definition inpdef.h:309
 
int edit_repeats
Definition inpdef.h:321
 
int * pzz
Definition inpdef.h:315
 
int is_in_reconn
Definition inpdef.h:320
 
int n_pzz
Definition inpdef.h:312
 
int representation
Definition inpdef.h:319
 
int n
Definition inpdef.h:311
 
int really_do_frame_shift
Definition inpdef.h:316
 
int frame_shift_scheme
Definition inpdef.h:317
 
OAD_PolymerUnit ** units
Definition inpdef.h:310
 
int treat
Definition inpdef.h:318
 
Structure describing v. 1.05 extended input supporting V3000; polymers.
Definition inpdef.h:380
 
int n_non_star_atoms
Definition inpdef.h:381
 
int n_sterel
Definition inpdef.h:399
 
int * atom_index_orig
Definition inpdef.h:383
 
int n_steabs
Definition inpdef.h:395
 
int * atom_index_fin
Definition inpdef.h:384
 
int n_non_haptic_bonds
Definition inpdef.h:388
 
int n_sgroups
Definition inpdef.h:385
 
int ** lists_sterac
Definition inpdef.h:404
 
int ** lists_haptic_bonds
Definition inpdef.h:390
 
int ** lists_steabs
Definition inpdef.h:396
 
int n_star_atoms
Definition inpdef.h:382
 
int ** lists_sterel
Definition inpdef.h:400
 
int n_collections
Definition inpdef.h:387
 
int n_haptic_bonds
Definition inpdef.h:389
 
int n_sterac
Definition inpdef.h:403
 
int n_3d_constraints
Definition inpdef.h:386
 
Structure describing atom parameters for drawing.
Definition inpdef.h:509
 
S_CHAR cStereoBondWarning[MAX_STEREO_BONDS]
Definition inpdef.h:524
 
AT_NUMB nCanonNbr
Definition inpdef.h:513
 
AT_NUMB nTautGroupCanonNbr
Definition inpdef.h:515
 
S_CHAR cFlags
Definition inpdef.h:517
 
char at_string[ATOM_INFO_LEN]
Definition inpdef.h:510
 
int DrawingLabelLeftShift
Definition inpdef.h:511
 
S_CHAR cStereoBondParity[MAX_STEREO_BONDS]
Definition inpdef.h:523
 
AT_NUMB nCanonEquNbr
Definition inpdef.h:514
 
S_CHAR cStereoCenterParity
Definition inpdef.h:522
 
S_CHAR cHighlightTheAtom
Definition inpdef.h:521
 
AT_NUMB nTautGroupEquNbr
Definition inpdef.h:516
 
int DrawingLabelLength
Definition inpdef.h:512
 
S_CHAR cStereoBondNumber[MAX_STEREO_BONDS]
Definition inpdef.h:525
 
Definition ichicant.h:338
 
Structure describing composite atom data for InChI generation.
Definition inpdef.h:647
 
AT_NUMB * nOffsetAtAndH
Definition inpdef.h:663
 
int bHasIsotopicLayer
Definition inpdef.h:655
 
int bExists
Definition inpdef.h:653
 
int num_isotopic
Definition inpdef.h:652
 
int num_at
Definition inpdef.h:649
 
int num_removed_H
Definition inpdef.h:650
 
int num_components
Definition inpdef.h:664
 
int nNumRemovedProtons
Definition inpdef.h:657
 
inp_ATOM * at
Definition inpdef.h:648
 
int bDeleted
Definition inpdef.h:654
 
NUM_H nNumRemovedProtonsIsotopic[NUM_H_ISOTOPES]
Definition inpdef.h:658
 
int num_bonds
Definition inpdef.h:651
 
int bTautomeric
Definition inpdef.h:656
 
NUM_H num_iso_H[NUM_H_ISOTOPES]
Definition inpdef.h:660
 
INT_ARRAY - Dynamically growing array of int.
Definition mol_fmt.h:207
 
Structure describing information about atoms for InChI generation.
Definition inpdef.h:553
 
AT_NUMB num_components
Definition inpdef.h:557
 
NUM_H num_iso_H[NUM_H_ISOTOPES]
Definition inpdef.h:562
 
AT_NUMB * pStereoFlags
Definition inpdef.h:558
 
int num_at
Definition inpdef.h:555
 
char szRemovedProtons[MAX_LEN_REMOVED_PROTONS]
Definition inpdef.h:563
 
int num_removed_iso_H
Definition inpdef.h:561
 
AT_NUMB StereoFlags
Definition inpdef.h:556
 
int nNumRemovedProtons
Definition inpdef.h:560
 
inf_ATOM * at
Definition inpdef.h:554
 
Structure describing normalization and canonicalization flags.
Definition inpdef.h:621
 
INCHI_MODE bNormalizationFlags[INCHI_NUM][TAUT_NUM]
Definition inpdef.h:624
 
int nCanonFlags[INCHI_NUM][TAUT_NUM]
Definition inpdef.h:625
 
INCHI_MODE bTautFlags[INCHI_NUM][TAUT_NUM]
Definition inpdef.h:622
 
INCHI_MODE bTautFlagsDone[INCHI_NUM][TAUT_NUM]
Definition inpdef.h:623
 
Structure describing structure edits.
Definition inpdef.h:945
 
INT_ARRAY * new_bond
Definition inpdef.h:948
 
int del_side_chains
Definition inpdef.h:951
 
INT_ARRAY * del_atom
Definition inpdef.h:946
 
INT_ARRAY * del_bond
Definition inpdef.h:947
 
INT_ARRAY * mod_bond
Definition inpdef.h:949
 
INT_ARRAY * mod_coord
Definition inpdef.h:950
 
Structure describing original atom data.
Definition inpdef.h:433
 
AT_NUMB * nSortedOrder
Definition inpdef.h:453
 
int nNumEquSets
Definition inpdef.h:450
 
int bDisconnectSalts
Definition inpdef.h:442
 
AT_NUMB * nEquLabels
Definition inpdef.h:451
 
int num_dimensions
Definition inpdef.h:437
 
inp_ATOM * at
Definition inpdef.h:436
 
int num_components
Definition inpdef.h:441
 
int n_zy
Definition inpdef.h:462
 
AT_NUMB * nOldCompNumber
Definition inpdef.h:449
 
OAD_V3000 * v3000
Definition inpdef.h:460
 
int bPreprocessed[INCHI_NUM]
Definition inpdef.h:456
 
AT_NUMB * nCurAtLen
Definition inpdef.h:448
 
int bSavedInINCHI_LIB[INCHI_NUM]
Definition inpdef.h:455
 
MOL_COORD * szCoord
Definition inpdef.h:457
 
int bDisconnectCoord
Definition inpdef.h:443
 
OAD_Polymer * polymer
Definition inpdef.h:459
 
int num_inp_atoms
Definition inpdef.h:439
 
int valid_polymer
Definition inpdef.h:461
 
int num_inp_bonds
Definition inpdef.h:438
 
Structure describing original structure.
Definition inpdef.h:478
 
int n_zy
Definition inpdef.h:486
 
OAD_V3000 * v3000
Definition inpdef.h:485
 
int num_atoms
Definition inpdef.h:479
 
char * szBonds
Definition inpdef.h:481
 
OAD_Polymer * polymer
Definition inpdef.h:484
 
char * szCoord
Definition inpdef.h:482
 
char * szAtoms
Definition inpdef.h:480