InChI
 
Loading...
Searching...
No Matches
ichisort.c File Reference
#include <string.h>
#include "mode.h"
#include "ichicomn.h"
#include "ichicant.h"
#include "bcf_s.h"
+ Include dependency graph for ichisort.c:

Macros

#define STKSIZ   (8*sizeof(void*) - 2)
 

Functions

void inchi_qsort (void *pParam, void *base, size_t num, size_t width, int(*comp)(const void *, const void *, void *))
 
void inchi_swap (char *a, char *b, size_t width)
 
int insertions_sort (void *pCG, void *base, size_t num, size_t width, int(*compare)(const void *, const void *, void *))
 
int insertions_sort_AT_NUMBERS (void *pCG, AT_NUMB *base, int num, int(*compare)(const void *e1, const void *e2, void *))
 
void insertions_sort_NeighList_AT_NUMBERS (NEIGH_LIST base, AT_RANK *nRank)
 
int insertions_sort_AT_RANK (AT_RANK *base, int num)
 
int insertions_sort_NeighList_AT_NUMBERS3 (NEIGH_LIST base, AT_RANK *nRank)
 
void insertions_sort_NeighListBySymmAndCanonRank (NEIGH_LIST base, const AT_RANK *nSymmRank, const AT_RANK *nCanonRank)
 
int CompNeighborsAT_NUMBER (const void *a1, const void *a2, void *p)
 
int comp_AT_RANK (const void *a1, const void *a2, void *p)
 
int CompRank (const void *a1, const void *a2, void *p)
 
int CompRanksOrd (const void *a1, const void *a2, void *p)
 
int CompAtomInvariants2Only (const void *a1, const void *a2, void *p)
 
int CompAtomInvariants2 (const void *a1, const void *a2, void *p)
 
int CompChemElemLex (const void *a1, const void *a2)
 
int CompareNeighListLex (NEIGH_LIST pp1, NEIGH_LIST pp2, const AT_RANK *nRank)
 
int CompareNeighListLexUpToMaxRank (NEIGH_LIST pp1, NEIGH_LIST pp2, const AT_RANK *nRank, AT_RANK nMaxAtNeighRank)
 
int compare_NeighLists (const NEIGH_LIST *op1, const NEIGH_LIST *op2, void *p)
 
int CompNeighListRanks (const void *a1, const void *a2, void *p)
 
int CompNeighLists (const void *a1, const void *a2, void *p)
 
int CompNeighListsUpToMaxRank (const void *a1, const void *a2, void *p)
 
int CompNeighListRanksOrd (const void *a1, const void *a2, void *p)
 
int CompRanksInvOrd (const void *a1, const void *a2, void *p)
 
int CompNeighborsRanksCountEql (const void *a1, const void *a2, void *p)
 
NEIGH_LISTCreateNeighListFromLinearCT (AT_NUMB *LinearCT, int nLenCT, int num_atoms)
 
NEIGH_LISTCreateNeighList (int num_atoms, int num_at_tg, sp_ATOM *at, int bDoubleBondSquare, T_GROUP_INFO *t_group_info)
 
void FreeNeighList (NEIGH_LIST *pp)
 
int BreakAllTies (CANON_GLOBALS *pCG, int num_atoms, int num_max, AT_RANK **pRankStack, NEIGH_LIST *NeighList, AT_RANK *nTempRank, CANON_STAT *pCS)
 
int * iisort (int *list, int num)
 

Macro Definition Documentation

◆ STKSIZ

#define STKSIZ   (8*sizeof(void*) - 2)

Function Documentation

◆ BreakAllTies()

int BreakAllTies ( CANON_GLOBALS pCG,
int  num_atoms,
int  num_max,
AT_RANK **  pRankStack,
NEIGH_LIST NeighList,
AT_RANK nTempRank,
CANON_STAT pCS 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ comp_AT_RANK()

int comp_AT_RANK ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ compare_NeighLists()

int compare_NeighLists ( const NEIGH_LIST op1,
const NEIGH_LIST op2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompareNeighListLex()

int CompareNeighListLex ( NEIGH_LIST  pp1,
NEIGH_LIST  pp2,
const AT_RANK nRank 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompareNeighListLexUpToMaxRank()

int CompareNeighListLexUpToMaxRank ( NEIGH_LIST  pp1,
NEIGH_LIST  pp2,
const AT_RANK nRank,
AT_RANK  nMaxAtNeighRank 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompAtomInvariants2()

int CompAtomInvariants2 ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompAtomInvariants2Only()

int CompAtomInvariants2Only ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CompChemElemLex()

int CompChemElemLex ( const void *  a1,
const void *  a2 
)
+ Here is the caller graph for this function:

◆ CompNeighborsAT_NUMBER()

int CompNeighborsAT_NUMBER ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CompNeighborsRanksCountEql()

int CompNeighborsRanksCountEql ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CompNeighListRanks()

int CompNeighListRanks ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompNeighListRanksOrd()

int CompNeighListRanksOrd ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompNeighLists()

int CompNeighLists ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompNeighListsUpToMaxRank()

int CompNeighListsUpToMaxRank ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ CompRank()

int CompRank ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CompRanksInvOrd()

int CompRanksInvOrd ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CompRanksOrd()

int CompRanksOrd ( const void *  a1,
const void *  a2,
void *  p 
)
+ Here is the caller graph for this function:

◆ CreateNeighList()

NEIGH_LIST * CreateNeighList ( int  num_atoms,
int  num_at_tg,
sp_ATOM at,
int  bDoubleBondSquare,
T_GROUP_INFO t_group_info 
)
+ Here is the caller graph for this function:

◆ CreateNeighListFromLinearCT()

NEIGH_LIST * CreateNeighListFromLinearCT ( AT_NUMB LinearCT,
int  nLenCT,
int  num_atoms 
)
+ Here is the caller graph for this function:

◆ FreeNeighList()

void FreeNeighList ( NEIGH_LIST pp)
+ Here is the caller graph for this function:

◆ iisort()

int * iisort ( int *  list,
int  num 
)
+ Here is the caller graph for this function:

◆ inchi_qsort()

void inchi_qsort ( void *  pParam,
void *  base,
size_t  num,
size_t  width,
int(*)(const void *, const void *, void *)  comp 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ inchi_swap()

void inchi_swap ( char *  a,
char *  b,
size_t  width 
)
+ Here is the caller graph for this function:

◆ insertions_sort()

int insertions_sort ( void *  pCG,
void *  base,
size_t  num,
size_t  width,
int(*)(const void *, const void *, void *)  compare 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insertions_sort_AT_NUMBERS()

int insertions_sort_AT_NUMBERS ( void *  pCG,
AT_NUMB base,
int  num,
int(*)(const void *e1, const void *e2, void *)  compare 
)
+ Here is the caller graph for this function:

◆ insertions_sort_AT_RANK()

int insertions_sort_AT_RANK ( AT_RANK base,
int  num 
)
+ Here is the caller graph for this function:

◆ insertions_sort_NeighList_AT_NUMBERS()

void insertions_sort_NeighList_AT_NUMBERS ( NEIGH_LIST  base,
AT_RANK nRank 
)
+ Here is the caller graph for this function:

◆ insertions_sort_NeighList_AT_NUMBERS3()

int insertions_sort_NeighList_AT_NUMBERS3 ( NEIGH_LIST  base,
AT_RANK nRank 
)
+ Here is the caller graph for this function:

◆ insertions_sort_NeighListBySymmAndCanonRank()

void insertions_sort_NeighListBySymmAndCanonRank ( NEIGH_LIST  base,
const AT_RANK nSymmRank,
const AT_RANK nCanonRank 
)
+ Here is the caller graph for this function: