const char * extract_alias_residue_check(stringhash *h, const char *resname) { const char *realres; if ( ! h || ! resname ) return resname; realres = stringhash_lookup(h,resname); if ( realres != STRINGHASH_FAIL ) return realres; return resname; }
const char * extract_alias_atom_check(stringhash *h, const char *resname, const char *atomname) { char resatom[24]; const char *realatom; if ( ! h || ! resname || ! atomname ) return atomname; if ( strlen(resname) + strlen(atomname) < 20 ) { sprintf(resatom,"%s %s",resname,atomname); realatom = stringhash_lookup(h,resatom); if ( realatom != STRINGHASH_FAIL ) return realatom; } resname = extract_alias_residue_check(h,resname); if ( strlen(resname) + strlen(atomname) < 20 ) { sprintf(resatom,"%s %s",resname,atomname); realatom = stringhash_lookup(h,resatom); if ( realatom != STRINGHASH_FAIL ) return realatom; } return atomname; }
/* * looks up a keyword */ keyword_t *keywords_lookup (const char *str, const int len, const unsigned int langtag) { keyword_t *kw; kw = (keyword_t *)keyword_lookup_byname (str, len); if (kw && langtag && ((kw->langtag & LANGTAG_LANGMASK & langtag) != langtag)) { kw = NULL; } if (!kw) { kw = stringhash_lookup (extrakeywords, str); if (kw && langtag && ((kw->langtag & LANGTAG_LANGMASK & langtag) != langtag)) { kw = NULL; } } return kw; }