"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "layer2/AtomInfo.h" between
pymol-open-source-2.2.0.tar.gz and pymol-open-source-2.3.0.tar.gz

About: PyMOL is a Python-enhanced molecular graphics tool. It excels at 3D visualization of proteins, small molecules, density, surfaces, and trajectories. It also includes molecular editing, ray tracing, and movies. Open Source version.

AtomInfo.h  (pymol-open-source-2.2.0):AtomInfo.h  (pymol-open-source-2.3.0)
/**
* @file
*/
/* /*
A* ------------------------------------------------------------------- A* -------------------------------------------------------------------
B* This file contains source code for the PyMOL computer program B* This file contains source code for the PyMOL computer program
C* copyright 1998-2000 by Warren Lyford Delano of DeLano Scientific. C* copyright 1998-2000 by Warren Lyford Delano of DeLano Scientific.
D* ------------------------------------------------------------------- D* -------------------------------------------------------------------
E* It is unlawful to modify or remove this copyright notice. E* It is unlawful to modify or remove this copyright notice.
F* ------------------------------------------------------------------- F* -------------------------------------------------------------------
G* Please see the accompanying LICENSE file for further information. G* Please see the accompanying LICENSE file for further information.
H* ------------------------------------------------------------------- H* -------------------------------------------------------------------
I* Additional authors of this source file include: I* Additional authors of this source file include:
skipping to change at line 217 skipping to change at line 219
#ifdef _PYMOL_IP_EXTRAS #ifdef _PYMOL_IP_EXTRAS
int oldid; int oldid;
#endif #endif
signed char order; // 0-4 signed char order; // 0-4
signed char temp1; // bool? where used? signed char temp1; // bool? where used?
signed char stereo; // 0-6 Only for SDF (MOL) format in/out signed char stereo; // 0-6 Only for SDF (MOL) format in/out
bool has_setting; /* setting based on unique_id */ bool has_setting; /* setting based on unique_id */
} BondType; } BondType;
typedef struct AtomInfoType { typedef struct AtomInfoType {
union { float * anisou; // only allocate with get_anisou
float * anisou; // only allocate with get_anisou
int64_t dummyanisou;
};
lexidx_t segi; lexidx_t segi;
lexidx_t chain; lexidx_t chain;
lexidx_t resn; lexidx_t resn;
lexidx_t name; lexidx_t name;
lexidx_t textType; lexidx_t textType;
lexidx_t custom; lexidx_t custom;
lexidx_t label; lexidx_t label;
int resv; int resv;
skipping to change at line 403 skipping to change at line 402
int AtomInfoCheckUniqueBondID(PyMOLGlobals * G, BondType * bi); int AtomInfoCheckUniqueBondID(PyMOLGlobals * G, BondType * bi);
void AtomInfoPurgeBond(PyMOLGlobals * G, BondType * bi); void AtomInfoPurgeBond(PyMOLGlobals * G, BondType * bi);
void AtomInfoBracketResidue(PyMOLGlobals * G, const AtomInfoType * ai0, int n0, void AtomInfoBracketResidue(PyMOLGlobals * G, const AtomInfoType * ai0, int n0,
const AtomInfoType * ai, int *st, int *nd); const AtomInfoType * ai, int *st, int *nd);
void AtomInfoBracketResidueFast(PyMOLGlobals * G, const AtomInfoType * ai0, int n0, int cur, void AtomInfoBracketResidueFast(PyMOLGlobals * G, const AtomInfoType * ai0, int n0, int cur,
int *st, int *nd); int *st, int *nd);
int AtomInfoUniquefyNames(PyMOLGlobals * G, const AtomInfoType * atInfo0, int n0 , int AtomInfoUniquefyNames(PyMOLGlobals * G, const AtomInfoType * atInfo0, int n0 ,
AtomInfoType * atInfo1, int *flag1, int n1); AtomInfoType * atInfo1, int *flag1, int n1);
int AtomInfoGetCarbColor(PyMOLGlobals * G);
bool AtomResiFromResv(char *resi, size_t size, int resv, char inscode); bool AtomResiFromResv(char *resi, size_t size, int resv, char inscode);
inline bool AtomResiFromResv(char *resi, size_t size, const AtomInfoType * ai) { inline bool AtomResiFromResv(char *resi, size_t size, const AtomInfoType * ai) {
return AtomResiFromResv(resi, size, ai->resv, ai->inscode); return AtomResiFromResv(resi, size, ai->resv, ai->inscode);
} }
int AtomInfoKnownWaterResName(PyMOLGlobals * G, const char *resn); int AtomInfoKnownWaterResName(PyMOLGlobals * G, const char *resn);
int AtomInfoKnownPolymerResName(const char *resn); int AtomInfoKnownPolymerResName(const char *resn);
int AtomInfoKnownProteinResName(const char *resn); int AtomInfoKnownProteinResName(const char *resn);
int AtomInfoKnownNucleicResName(const char *resn); int AtomInfoKnownNucleicResName(const char *resn);
void AtomInfoGetPDB3LetHydroName(PyMOLGlobals * G, const char *resn, const char *iname, char *oname); void AtomInfoGetPDB3LetHydroName(PyMOLGlobals * G, const char *resn, const char *iname, char *oname);
skipping to change at line 433 skipping to change at line 431
#define cAIC_state 0x0200 #define cAIC_state 0x0200
#define cAIC_rank 0x0400 #define cAIC_rank 0x0400
#define cAIC_custom 0x0800 #define cAIC_custom 0x0800
#define cAIC_IDMask (cAIC_id|cAIC_rank) #define cAIC_IDMask (cAIC_id|cAIC_rank)
#define cAIC_PDBMask (cAIC_b|cAIC_q|cAIC_id|cAIC_rank) #define cAIC_PDBMask (cAIC_b|cAIC_q|cAIC_id|cAIC_rank)
#define cAIC_MMDMask (cAIC_pc|cAIC_ct|cAIC_id|cAIC_rank) #define cAIC_MMDMask (cAIC_pc|cAIC_ct|cAIC_id|cAIC_rank)
#define cAIC_MOLMask (cAIC_fc|cAIC_id|cAIC_rank) #define cAIC_MOLMask (cAIC_fc|cAIC_id|cAIC_rank)
#define cAIC_AllMask 0xFFFF #define cAIC_AllMask 0xFFFF
void AtomInfoCombine(PyMOLGlobals * G, AtomInfoType * dst, AtomInfoType * src, i nt mask); void AtomInfoCombine(PyMOLGlobals * G, AtomInfoType * dst, AtomInfoType&& src, i nt mask);
int AtomInfoNameOrder(PyMOLGlobals * G, const AtomInfoType * at1, const AtomInfo Type * at2); int AtomInfoNameOrder(PyMOLGlobals * G, const AtomInfoType * at1, const AtomInfo Type * at2);
int AtomInfoUpdateAutoColor(PyMOLGlobals * G); int AtomInfoUpdateAutoColor(PyMOLGlobals * G);
typedef struct { typedef struct {
int resv1, resv2; int resv1, resv2;
char inscode1, inscode2; char inscode1, inscode2;
unsigned char chain1, chain2; unsigned char chain1, chain2;
unsigned char type; unsigned char type;
int next; int next;
} SSEntry; } SSEntry;
skipping to change at line 466 skipping to change at line 464
} }
#define AtomInfoCheckBondSetting AtomInfoCheckSetting #define AtomInfoCheckBondSetting AtomInfoCheckSetting
template <typename V, typename T> void SettingSet(PyMOLGlobals * G, int index, V value, T * ai) { template <typename V, typename T> void SettingSet(PyMOLGlobals * G, int index, V value, T * ai) {
AtomInfoCheckUniqueID(G, ai); AtomInfoCheckUniqueID(G, ai);
ai->has_setting = true; ai->has_setting = true;
SettingUniqueSet(G, ai->unique_id, index, value); SettingUniqueSet(G, ai->unique_id, index, value);
} }
/* /**
* Return true if `item` has the requested setting defined and the * Return true if `item` has the requested setting defined and the
* value could be assigned to `out`. * value could be assigned to `out`.
*/ */
template <typename V, typename T> template <typename V, typename T>
bool AtomSettingGetIfDefined(PyMOLGlobals * G, T * item, int index, V * out) { bool AtomSettingGetIfDefined(PyMOLGlobals * G, T * item, int index, V * out) {
return item->has_setting && return item->has_setting &&
SettingUniqueGetIfDefined<V>(G, item->unique_id, index, out); SettingUniqueGetIfDefined<V>(G, item->unique_id, index, out);
} }
/* /**
* Return the `item`-level setting value or `default_`, if `index` is not * Return the `item`-level setting value or `default_`, if `index` is not
* defined for `item`. * defined for `item`.
*/ */
template <typename V, typename T> template <typename V, typename T>
V AtomSettingGetWD(PyMOLGlobals * G, T * item, int index, V default_) { V AtomSettingGetWD(PyMOLGlobals * G, T * item, int index, V default_) {
V out; V out;
if (AtomSettingGetIfDefined<V, T>(G, item, index, &out)) if (AtomSettingGetIfDefined<V, T>(G, item, index, &out))
return out; return out;
return default_; return default_;
} }
 End of changes. 6 change blocks. 
9 lines changed or deleted 7 lines changed or added

Home  |  About  |  Features  |  All  |  Newest  |  Dox  |  Diffs  |  RSS Feeds  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTP(S)