SBMStructuralModelNodeResidue Class Reference

This class describes a residue in a structural model.

Constructors and destructors

 SBMStructuralModelNodeResidue ()
 
 SBMStructuralModelNodeResidue (const std::string &n)
 
virtual ~SBMStructuralModelNodeResidue ()
 

Serialization

bool isSerializable () const
 Returns true.
 
virtual void serialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0)) const
 Serializes the node.
 
virtual void unserialize (SBCSerializer *serializer, const SBNodeIndexer &nodeIndexer, const SBVersionNumber &sdkVersionNumber=SB_SDK_VERSION_NUMBER, const SBVersionNumber &classVersionNumber=SBVersionNumber(1, 0, 0))
 Unserializes the node.
 

Node property attributes

enum  ResidueType {
  Undefined,
  ALA,
  ARG,
  ASP,
  ASN,
  VAL,
  HIS,
  GLY,
  GLU,
  GLN,
  ILE,
  LEU,
  LYS,
  MET,
  PRO,
  SER,
  TYR,
  THR,
  TRP,
  PHE,
  CYS,
  ASX,
  GLX,
  XLE,
  XAA,
  SEC,
  PYL,
  A,
  C,
  G,
  U,
  I,
  DA,
  DC,
  DG,
  DT,
  DI
}
 
enum  SecondaryStructureType {
  Unstructured,
  Alpha,
  Beta
}
 

Topology

virtual bool canAddChild (SBNode *node, SBNode *nextNode=0) const
 Returns whether this node can add node as a child.
 
virtual bool canAddChildType (SBNode::Type nodeType) const
 Returns whether this node can add a node with type nodeType as a child.
 
virtual bool canHaveDescendantType (SBNode::Type nodeType) const
 Returns whether this node can have a node with type nodeType as a descendant.
 
virtual bool addChild (SBNode *node, SBNode *nextNode=0)
 Adds a child to the node.
 
virtual bool removeChild (SBNode *node)
 Removes a child from the node.
 
SBMStructuralModelNodeResiduegetNextResidue () const
 Returns the next residue if any, else returns nullptr.
 
SBMStructuralModelNodeResiduegetPreviousResidue () const
 Returns the previous residue if any, else returns nullptr.
 
SBMStructuralModelNodeResiduegetNextAminoAcid () const
 Returns the next amino acid if any, else returns nullptr.
 
SBMStructuralModelNodeResiduegetPreviousAminoAcid () const
 Returns the previous amino acid if any, else returns nullptr.
 
SBMStructuralModelNodeResiduegetNextNucleicAcid () const
 Returns the next nucleic acid if any, else returns nullptr.
 
SBMStructuralModelNodeResiduegetPreviousNucleicAcid () const
 Returns the previous nucleic acid if any, else returns nullptr.
 
SBMStructuralModelNodeBackbonegetBackbone () const
 Returns the residue's backbone if it has one, else returns nullptr.
 
SBMStructuralModelNodeSideChaingetSideChain () const
 Returns the residue's side-chain if it has one, else returns nullptr.
 
ResidueType getResidueType () const
 Returns the residue's type.
 
void setResidueType (ResidueType residueType)
 Sets the residue's type to residueType.
 
std::string getResidueTypeString () const
 Returns the string representation of the residue's type.
 
void setResidueType (const std::string &s)
 Sets the residue's type based on the string s.
 
std::string getResidueTypeFullName () const
 Returns the full name of the residue's type.
 
bool isAminoAcid () const
 Returns true if and only if the residue is an amino acid.
 
bool isNucleicAcid () const
 Returns true if and only if the residue is a nucleic acid.
 
bool isTerminal () const
 Returns true if and only if the residue is terminal.
 
bool hasCompleteAminoAcidBackbone () const
 Returns true if and only if the residue has a complete amino-acid backbone.
 
virtual SBMStructuralModelNodeResidueclone ()
 Returns a copy of the node and its descendants.
 
static std::string getResidueTypeString (ResidueType residueType)
 Returns the string representation of the residue type residueType.
 
static ResidueType getResidueTypeFromString (const std::string &s)
 Returns the residue type based on the string s.
 
static std::string getResidueTypeFullName (ResidueType residueType)
 Returns the full name of the residue type residueType.
 
static bool isAminoAcid (ResidueType residueType)
 Returns true if and only if the residue of residueType is an amino acid.
 
static bool isNucleicAcid (ResidueType residueType)
 Returns true if and only if the residue of residueType is a nucleic acid.
 

Identity

virtual Type getType () const
 Returns the type of the data graph node.
 
virtual void setName (const std::string &name)
 Sets the name of the residue, and updates accordingle names for its backbone and side chain.
 

Covalent bonds

int createCovalentBondsByResidueType ()
 Sets the order of covalent bonds for the atoms belonging to the residue according to the residue type, regardless of inter-atomic distances.
 

Hydrogens

int addHydrogensByResidueType ()
 Adds hydrogen atoms to the residue based on its type.
 

Amino acid residue geometry

SBQuantity::dimensionless computeAminoAcidPhiAngle ()
 Computes the phi dihedral angle (in degrees) for the amino acid's backbone.
 
SBQuantity::dimensionless computeAminoAcidPsiAngle ()
 Computes the psi dihedral angle (in degrees) for the amino acid's backbone.
 
bool hasAminoAcidChi1Angle () const
 Returns true if it is an amino acid and has chi1 angle.
 
bool hasAminoAcidChi2Angle () const
 Returns true if it is an amino acid and has chi2 angle.
 
bool hasAminoAcidChi3Angle () const
 Returns true if it is an amino acid and has chi3 angle.
 
bool hasAminoAcidChi4Angle () const
 Returns true if it is an amino acid and has chi4 angle.
 
bool hasAminoAcidChi5Angle () const
 Returns true if it is an amino acid and has chi5 angle.
 
SBQuantity::dimensionless computeAminoAcidChi1Angle ()
 Computes the chi1 angle (in degrees) for the amino acid residue's side chain.
 
SBQuantity::dimensionless computeAminoAcidChi2Angle ()
 Computes the chi2 angle (in degrees) for the amino acid residue's side chain.
 
SBQuantity::dimensionless computeAminoAcidChi3Angle ()
 Computes the chi3 angle (in degrees) for the amino acid residue's side chain.
 
SBQuantity::dimensionless computeAminoAcidChi4Angle ()
 Computes the chi4 angle (in degrees) for the amino acid residue's side chain.
 
SBQuantity::dimensionless computeAminoAcidChi5Angle ()
 Computes the chi5 angle (in degrees) for the amino acid residue's side chain.
 
bool orientAminoAcidSideChain (const SBQuantity::degree &chi1, const SBQuantity::degree &chi2=SBQuantity::degree(0.0), const SBQuantity::degree &chi3=SBQuantity::degree(0.0), const SBQuantity::degree &chi4=SBQuantity::degree(0.0), const SBQuantity::degree &chi5=SBQuantity::degree(0.0))
 Rotates the amino acid's side chain to orient it according to given digedral angles chi1, chi2, chi3, chi4, chi5. Returns true if at least chi1 rotation was performed.
 
static bool hasAminoAcidChi1Angle (const ResidueType residueType)
 Returns true if the residue type residueType is an amino acid and has chi1 angle.
 
static bool hasAminoAcidChi2Angle (const ResidueType residueType)
 Returns true if the residue type residueType is an amino acid and has chi2 angle.
 
static bool hasAminoAcidChi3Angle (const ResidueType residueType)
 Returns true if the residue type residueType is an amino acid and has chi3 angle.
 
static bool hasAminoAcidChi4Angle (const ResidueType residueType)
 Returns true if the residue type residueType is an amino acid and has chi4 angle.
 
static bool hasAminoAcidChi5Angle (const ResidueType residueType)
 Returns true if the residue type residueType is an amino acid and has chi5 angle.
 

Nucleic acid residue geometry

SBQuantity::dimensionless computeNucleicAcidAlphaAngle ()
 Computes the alpha (O3'(i-1)-P-O5'-C5') dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidBetaAngle ()
 Computes the beta (P-O5'-C5'-C4') dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidGammaAngle ()
 Computes the gamma (O5'-C5'-C4'-C3') dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidDeltaAngle ()
 Computes the delta (C5'-C4'-C3'-O3') dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidEpsilonAngle ()
 Computes the epsilon (C4'-C3'-O3'-P(i+1)) dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidZetaAngle ()
 Computes the zeta (C3'-O3'-P(i+1)-O5'(i+1)) dihedral angle (in degrees) for the nucleic acid's backbone.
 
SBQuantity::dimensionless computeNucleicAcidChiAngle ()
 Computes the chi dihedral angle (in degrees) for the nucleic acid's backbone. More...
 

Secondary structure

SecondaryStructureType getSecondaryStructureType () const
 Returns the most probable secondary structure based on bonds parameters and residue geometry.
 
void setSecondaryStructureType (SecondaryStructureType type)
 Sets the most probable secondary structure based on bonds parameters and residue geometry.
 
std::string getSecondaryStructureTypeString () const
 Returns the secondary structure type as a string.
 
static std::string getSecondaryStructureTypeString (SecondaryStructureType secondaryStructureType)
 Returns the secondary structure type secondaryStructureType as a string.
 

Hydrophobicity

enum  HydrophobicityScale {
  HydrophobicityScale::KyteDoolittle1982,
  HydrophobicityScale::SeredaEtAl1994,
  HydrophobicityScale::MoneraEtAl1995,
  HydrophobicityScale::WimleyWhite1996,
  HydrophobicityScale::HessaEtAl2005,
  HydrophobicityScale::ZhaoLondon2006,
  HydrophobicityScale::MoonFleming2011
}
 
bool hasHydrophobicity () const
 Returns true if the residue's hydrophobicity is defined.
 
double getHydrophobicity () const
 Returns the residue's hydrophobicity in the current hydrophobicity scale.
 
double getHydrophobicity (const HydrophobicityScale hydrophobicityScale) const
 Returns the residue's hydrophobicity in the given hydrophobicity scale hydrophobicityScale.
 
HydrophobicityScale getHydrophobicityScale () const
 Returns the current scale of the residue's hydrophobicity.
 
void setHydrophobicityScale (const HydrophobicityScale hydrophobicityScale)
 Sets the current hydrophobicity scale to hydrophobicityScale.
 
std::string getHydrophobicityScaleString () const
 Returns the current hydrophobicity scale as a string.
 
int getHydrophobicityScaleCount () const
 Returns the number of hydrophobicity scales.
 
int getHydrophobicityScaleCurrentIndex () const
 Returns the current scale's index in the list of hydrophobicity scales.
 
void setHydrophobicityScaleCurrentIndex (const int index)
 Sets the current hydrophobicity scale to the hydrophobicity scale from the list.
 
std::string getHydrophobicityScaleItemText (const int index) const
 Returns the hydrophobicity scale index as a string.
 
static bool hasHydrophobicity (const ResidueType residueType)
 Returns true if for the residue type residueType the hydrophobicity is defined.
 
static double getHydrophobicity (const ResidueType residueType, const HydrophobicityScale hydrophobicityScale)
 Returns the hydrophobicity value for the residue residueType in the hydrophobicity scale hydrophobicityScale.
 
static std::string getHydrophobicityScaleString (const HydrophobicityScale hydrophobicityScale)
 Returns the hydrophobicity scale hydrophobicityScale as a string.
 

Amino acids information

std::string getAminoAcidOneLetterCode () const
 Returns one letter code of the amino acid residue.
 
static std::string getAminoAcidOneLetterCode (const ResidueType residueType)
 Returns one letter code of the amino acid residue residueType.
 

Properties of common amino acid residues

bool hasDissociationConstant () const
 Returns true if the dissociation constants (pKa1, pKa2) and isoelectric point are defined for this residue.
 
double getDissociationConstant1 () const
 Returns the pKa1 value (the negative of the logarithm of the dissociation constant for the carboxyl functional group, -COOH) for this residue. More...
 
double getDissociationConstant2 () const
 Returns the pKa2 value (the negative of the logarithm of the dissociation constant for the amino functional group, -NH3) for this residue. More...
 
double getIsoelectricPointPH () const
 Returns the pI value (the pH at the isoelectric point) for this residue. More...
 
static bool hasDissociationConstant (const ResidueType residueType)
 Returns true if the dissociation constants (pKa1, pKa2) and isoelectric point are defined for the residue residueType.
 
static double getDissociationConstant1 (const ResidueType residueType)
 Returns the pKa1 value (the negative of the logarithm of the dissociation constant for the carboxyl functional group, -COOH) for the residue residueType. More...
 
static double getDissociationConstant2 (const ResidueType residueType)
 Returns the pKa2 value (the negative of the logarithm of the dissociation constant for the amino functional group, -NH3) for the residue residueType. More...
 
static double getIsoelectricPointPH (const ResidueType residueType)
 Returns the pI value (the pH at the isoelectric point) for the residue residueType. More...
 

Side chain properties

enum  SideChainCharge {
  UndefinedSideChainCharge,
  Negative,
  Neutral,
  Positive
}
 
enum  SideChainPolarity {
  UndefinedSideChainPolarity,
  Nonpolar,
  Polar,
  AcidicPolar,
  BasicPolar
}
 
bool hasSideChainCharge () const
 Returns true if the residue's side chain charge is defined.
 
SideChainCharge getSideChainCharge () const
 Returns the residue's side chain charge. More...
 
std::string getSideChainChargeString () const
 Returns the residue's side chain charge as a string.
 
bool hasSideChainPolarity () const
 Returns true if the residue's side chain polarity is defined.
 
SideChainPolarity getSideChainPolarity () const
 Returns the residue's side chain polarity. More...
 
std::string getSideChainPolarityString () const
 Returns the residue's side chain polarity as a string.
 
 SB_NODE_GETTER_0 (, SBMStructuralModelNodeResidue::ResidueType, GetResidueType)
 
 SB_NODE_GETTER_0 (, std::string, GetResidueTypeString)
 
 SB_NODE_GETTER_0 (, SBMStructuralModelNodeResidue::SecondaryStructureType, GetSecondaryStructureType)
 
 SB_NODE_GETTER_0 (, double, GetHydrophobicity)
 
 SB_NODE_GETTER_0 (, SBMStructuralModelNodeResidue::HydrophobicityScale, GetHydrophobicityScale)
 
 SB_NODE_GETTER_0 (, SBMStructuralModelNodeResidue::SideChainCharge, GetSideChainCharge)
 
 SB_NODE_GETTER_0 (, std::string, GetSideChainChargeString)
 
 SB_NODE_GETTER_0 (, SBMStructuralModelNodeResidue::SideChainPolarity, GetSideChainPolarity)
 
 SB_NODE_GETTER_0 (, std::string, GetSideChainPolarityString)
 
 SB_NODE_GETTER_0 (, double, GetDissociationConstant1)
 
 SB_NODE_GETTER_0 (, double, GetDissociationConstant2)
 
 SB_NODE_GETTER_0 (, double, GetIsoelectricPointPH)
 
 SB_NODE_GETTER_0 (, int, GetResidueSequenceNumber)
 
 SB_NODE_PREDICATE_0 (, IsAminoAcid)
 
 SB_NODE_PREDICATE_0 (, IsNucleicAcid)
 
 SB_NODE_PREDICATE_0 (, IsTerminal)
 
 SB_NODE_PREDICATE_0 (, HasCompleteAminoAcidBackbone)
 
 SB_NODE_PREDICATE_0 (, HasHydrophobicity)
 
 SB_NODE_PREDICATE_0 (, HasSideChainCharge)
 
 SB_NODE_PREDICATE_0 (, HasSideChainPolarity)
 
 SB_NODE_PREDICATE_0 (, HasDissociationConstant)
 
 SB_NODE_PREDICATE_0 (, HasResidueSequenceNumber)
 
 SB_DECLARE_DATA (SBMStructuralModelNodeResidue)
 
static bool hasSideChainCharge (const ResidueType residueType)
 Returns true if for the residue type residueType the side chain charge is defined.
 
static SideChainCharge getSideChainCharge (const ResidueType residueType)
 Returns the residue's side chain charge for the residue residueType. More...
 
static std::string getSideChainChargeString (const SideChainCharge sideChainCharge)
 Returns a side chain charge sideChainCharge as a string.
 
static bool hasSideChainPolarity (const ResidueType residueType)
 Returns true if for the residue type residueType the side chain polarity is defined.
 
static SideChainPolarity getSideChainPolarity (const ResidueType residueType)
 Returns the residue's side chain polarity for the residue residueType. More...
 
static std::string getSideChainPolarityString (const SideChainPolarity sideChainPolarity)
 Returns a side chain polarity sideChainPolarity as a string.
 

Additional Inherited Members

- Public Types inherited from SBDDataGraphNode
enum  Type {
  Undefined,
  StructuralModel,
  StructuralModelNode,
  StructuralModelConformation,
  Conformation,
  StructuralModelPath,
  Path,
  StructuralModelNodeGroup,
  StructuralGroup,
  StructuralModelNodeRoot,
  Root,
  StructuralModelNodeParticle,
  StructuralParticle,
  StructuralModelNodeAtom,
  Atom,
  StructuralModelNodePseudoAtom,
  PseudoAtom,
  StructuralModelNodeBond,
  Bond,
  StructuralModelNodePseudoBond,
  PseudoBond,
  StructuralModelNodeHydrogenBond,
  HydrogenBond,
  StructuralModelNodeHydrogenBondGroup,
  HydrogenBondGroup,
  StructuralModelNodeResidue,
  Residue,
  StructuralModelNodeSegment,
  Segment,
  StructuralModelNodeProtein,
  Protein,
  StructuralModelNodeChain,
  Chain,
  StructuralModelNodeMolecule,
  Molecule,
  StructuralModelNodeBackbone,
  Backbone,
  StructuralModelNodeSideChain,
  SideChain,
  VisualModel,
  VisualModelMesh,
  Mesh,
  DynamicalModel,
  DynamicalModelParticleSystem,
  ParticleSystem,
  DynamicalModelRigidBodySystem,
  RigidBodySystem,
  DynamicalModelArticulatedBodySystem,
  ArticulatedBodySystem,
  DynamicalModelNode,
  DynamicalNode,
  DynamicalModelNodeGroup,
  DynamicalGroup,
  DynamicalModelNodeRoot,
  DynamicalRoot,
  DynamicalModelNodeParticle,
  DynamicalParticle,
  DynamicalModelNodeRigidBody,
  RigidBody,
  DynamicalModelNodeArticulatedBody,
  ArticulatedBody,
  InteractionModel,
  InteractionModelParticleSystem,
  InteractionModelRigidBodySystem,
  InteractionModelArticulatedBodySystem,
  PropertyModel,
  PropertyModelFunction,
  Simulator,
  SimulatorParticleSystem,
  SimulatorRigidBodySystem,
  SimulatorArticulatedBodySystem,
  StateUpdater,
  StateUpdaterParticleSystem,
  StateUpdaterRigidBodySystem,
  StateUpdaterArticulatedBodySystem,
  DocumentManager,
  Document,
  Folder,
  Camera,
  Label,
  Note,
  Animation,
  Presentation,
  DataGraphNodeGroup,
  NodeGroup,
  Controller,
  ControllerNode,
  Asset
}
 The type of the data graph node. More...
 
enum  RenderingPass {
  RenderingPass::Setup,
  RenderingPass::OpaqueGeometry,
  RenderingPass::SelectableGeometry,
  RenderingPass::ShadowingGeometry,
  RenderingPass::TransparentGeometry,
  RenderingPass::Interface,
  RenderingPass::Text
}
 The rendering pass. More...
 
- Public Member Functions inherited from SBMStructuralModelNodeGroup
 SBMStructuralModelNodeGroup ()
 Builds a base model.
 
 SBMStructuralModelNodeGroup (const std::string &n)
 
virtual ~SBMStructuralModelNodeGroup ()
 
bool isSerializable () const
 Returns true.
 
virtual SBPointerList< SBMStructuralModelNode > const * getChildren () const
 
bool hasComment () const
 Returns true when the comment is set.
 
std::string const & getComment () const
 Returns the comment.
 
void setComment (const std::string &comment)
 Sets the comment.
 
void clearComment ()
 Clears the comment.
 
bool hasStatusBit () const
 Returns true when the status bit is set.
 
std::string const & getStatusBit () const
 Returns the status bit.
 
void setStatusBit (const std::string &statusBit)
 Sets the status bit.
 
void clearStatusBit ()
 Clears the status bit.
 
bool hasStructuralID () const
 Returns true when the structural group's id is set.
 
int const & getStructuralID () const
 Returns the structural group's id.
 
void setStructuralID (const int &groupID)
 Sets the structural group's id.
 
void clearStructuralID ()
 Clears the structural group's id.
 
virtual void onBaseEvent (SBEvent *event)
 
virtual void getNodes (SBNodeIndexer &nodeIndexer, SBNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a nodeType, a selection status and a visitPredicate, with our without dependencies.
 
virtual void getNodes (SBNodeIndexer &nodeIndexer, const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Returns some nodes.
 
bool isWater ()
 Returns true if the structural group is a water molecule. More...
 
virtual void forEachNodeDepthFirst (void(*action)(SBDDataGraphNode *node))
 Performs an action on each node.
 
virtual void forEachNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node))
 Performs an action on each node.
 
unsigned int getNumberOfChains ()
 Returns the number of chains.
 
unsigned int getNumberOfMolecules ()
 Returns the number of molecules.
 
unsigned int getNumberOfResidues ()
 Returns the number of residues.
 
unsigned int getNumberOfSegments ()
 Returns the number of segments.
 
unsigned int getNumberOfStructuralGroups ()
 Returns the number of structural groups.
 
unsigned int getNumberOfAtoms ()
 Returns the number of atoms.
 
unsigned int getNumberOfCarbons ()
 Returns the number of carbons.
 
unsigned int getNumberOfHydrogens ()
 Returns the number of hydrogens.
 
unsigned int getNumberOfNitrogens ()
 Returns the number of nitrogens.
 
unsigned int getNumberOfOxygens ()
 Returns the number of oxygens.
 
unsigned int getNumberOfSulfurs ()
 Returns the number of sulfurs.
 
unsigned int getNumberOfOtherAtoms ()
 Returns the number of other atoms.
 
int getSumOfFormalCharges ()
 Returns the sum of formal charges.
 
float getSumOfPartialCharges ()
 Returns the sum of partial charges.
 
SBQuantity::mass getMolecularWeight ()
 Returns the molecular weight. More...
 
virtual void print (unsigned int offset=0) const
 Prints debugging information.
 
 SB_NODE_GETTER_0 (, std::string, GetComment)
 
 SB_NODE_GETTER_0 (, std::string, GetStatusBit)
 
 SB_NODE_GETTER_0 (, int, GetStructuralID)
 
 SB_NODE_PREDICATE_0 (, HasComment)
 
 SB_NODE_PREDICATE_0 (, HasStatusBit)
 
 SB_NODE_PREDICATE_0 (, HasStructuralID)
 
 SB_DECLARE_DATA (SBMStructuralModelNodeGroup)
 
- Public Member Functions inherited from SBMStructuralModelNode
virtual ~SBMStructuralModelNode ()
 
SBMStructuralModelNodegetNextStructuralNode () const
 
SBMStructuralModelNodegetPreviousStructuralNode () const
 
virtual bool isLocked () const
 Returns whether the node is locked (because of the model)
 
virtual bool getLockedFlag () const
 Returns the locked flag of the model.
 
SBMStructuralModelgetModel () const
 
bool getMobilityFlag () const
 Returns the mobility flag.
 
void setMobilityFlag (bool flag)
 Sets the mobility flag to flag.
 
virtual unsigned int getOpacity () const
 Returns the opacity.
 
virtual unsigned int getMinimumOpacity () const
 Returns the minimum opacity.
 
virtual unsigned int getTransparency () const
 Returns the transparency.
 
virtual unsigned int getMaximumTransparency () const
 Returns the maximum transparency.
 
void connectStructuralSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBStructuralEvent *)=0)
 
bool structuralSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *)) const
 
void disconnectStructuralSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBStructuralEvent *))
 
void getAllStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesBreadthFirstTopDown (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getAllStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesBreadthFirstBottomUp (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getAllStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getInternalStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getLeafStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer)
 
void getStructuralNodesDepthFirst (std::vector< SBMStructuralModelNode * > &nodeIndexer, bool(*selectionRule)(SBMStructuralModelNode *))
 
void getStructuralNodesBreadthFirst (std::vector< SBMStructuralModelNode * > &nodeVectorTopDown, std::vector< SBMStructuralModelNode * > &nodeVectorBottomUp, bool(*selectionRule)(SBMStructuralModelNode *))
 
void forEachStructuralNodeBreadthFirst (void(*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeDepthFirst (void(*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeBreadthFirst (SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
void forEachStructuralNodeDepthFirst (SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
 SB_NODE_GETTER_0 (, bool, GetMobilityFlag)
 
 SB_DECLARE_DATA (SBMStructuralModelNode)
 
- Public Member Functions inherited from SBMModelNode
 SB_DECLARE_DATA (SBMModelNode)
 
- Public Member Functions inherited from SBDDataGraphNode
SBDDataGraphNodegetParent () const
 Returns the parent of the node. More...
 
SBDDataGraphNodegetThisNode () const
 Returns the pointer to this node. More...
 
SBDDataGraphNodegetNextNode () const
 Returns the pointer to the next node in the children of the node's parent. More...
 
SBDDataGraphNodegetPreviousNode () const
 Returns the pointer to the previous node in the children of the node's parent. More...
 
SBDDataGraphNodegetNextNode (SBDDataGraphNode::Type nodeType) const
 Returns the pointer to the next node with type nodeType in the children of the node's parent. More...
 
SBDDataGraphNodegetPreviousNode (SBDDataGraphNode::Type nodeType) const
 Returns the pointer to the previous node with type nodeType in the children of the node's parent. More...
 
SBDDocumentgetDocument () const
 Returns the document the node belongs to. More...
 
virtual bool canAddChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0) const
 Returns whether this node can add node as a child. More...
 
virtual bool addChild (SBDDataGraphNode *node, SBDDataGraphNode *nextNode=0)
 Adds a child to the node. More...
 
virtual bool removeChild (SBDDataGraphNode *node)
 Removes a child from the node. More...
 
bool hasOneOf (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or is the ancestor of one of them. More...
 
bool descendsFrom (SBDDataGraphNode *node) const
 Returns true if and only if this node is node, or descends from it. More...
 
bool descendsFrom (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or descends from one of them. More...
 
bool descendsFrom (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer, or descends from one of them. More...
 
bool isIn (SBDDataGraphNode *node) const
 Returns true if and only if this node is node, or descends from it, or belongs to a group stored in node. More...
 
bool isIn (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer, or descends from one of them, or belongs to a group stored in one of the nodes of the nodeIndexer. More...
 
bool isIn (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer, or descends from one of them, or belongs to a group stored in of the nodes of the nodePointerIndexer. More...
 
bool isOneOf (const SBNodeIndexer &nodeIndexer) const
 Returns true if and only if this node is one of the nodes of the nodeIndexer. More...
 
bool isOneOf (SBPointerIndexer< SBDDataGraphNode > *nodePointerIndexer) const
 Returns true if and only if this node is one of the nodes of the nodePointerIndexer. More...
 
SBDDataGraphNodegetRoot () const
 Returns the root of the hierarchy the node belongs to. More...
 
unsigned int getNodeIndex () const
 Returns the node index (unique in the whole data graph, but non-persistent) More...
 
std::string getTypeString (bool humanReadable=false) const
 Returns a string describing the type of the data graph node. More...
 
virtual std::string const & getName () const
 Returns the name of the node.
 
bool isType (Type type) const
 Returns true when the type of the node corresponds to type.
 
bool isModel () const
 Returns true when the node is a model.
 
bool isStructuralNode () const
 Returns true when the node is a structural node.
 
bool isStructuralModel () const
 Returns true when the node is a structural model.
 
bool isVisualModel () const
 Returns true when the node is a visual model.
 
bool isDynamicalModel () const
 Returns true when the node is a dynamical model.
 
bool isInteractionModel () const
 Returns true when the node is a interaction model.
 
bool isPropertyModel () const
 Returns true when the node is a property model.
 
bool isMesh () const
 Returns true when the node is a mesh.
 
bool isSimulator () const
 Returns true when the node is a simulator.
 
bool isStructuralParticle () const
 Returns true when the node is a structural particle (an atom or a pseudo-atom)
 
virtual void setLockedFlag (bool flag)
 Sets the locked flag.
 
bool isCreated () const
 Returns true if and only if the node is created. More...
 
void create ()
 Creates the node. More...
 
bool isErased () const
 Returns true if and only if the node is erased. More...
 
void erase ()
 Erases the node. More...
 
unsigned int getFlags () const
 Returns the flags. More...
 
unsigned int getInheritedFlags () const
 Returns the inherited flags. More...
 
bool isSelected () const
 Returns whether the node is selected. More...
 
bool getSelected () const
 Returns whether the node is selected.
 
bool getSelectionFlag () const
 Returns the selection flag. More...
 
void setSelectionFlag (bool flag)
 Sets the selection flag. More...
 
bool isVisible () const
 Returns whether the node is visible. More...
 
bool getVisible () const
 Returns whether the node is visible.
 
bool getVisibilityFlag () const
 Returns the visibility flag. More...
 
void setVisibilityFlag (bool flag)
 Sets the visibility flag. More...
 
bool isHighlighted () const
 Returns whether the node is highlighted. More...
 
bool getHighlightingFlag () const
 Returns the highlighting flag. More...
 
void setHighlightingFlag (bool flag)
 Sets the highlighting flag. More...
 
virtual void display (RenderingPass renderingPass)
 Displays the node. More...
 
virtual void display ()
 Displays the node (deprecated) More...
 
virtual void displayForShadow ()
 Displays the node for shadowing purposes (deprecated) More...
 
virtual void displayForSelection ()
 Displays the node for selection purposes (deprecated) More...
 
virtual void setOpacity (unsigned int opacity)
 Sets the opacity.
 
virtual bool hasOpacityRange () const
 Returns whether the node has the opacity range.
 
virtual unsigned int getDefaultOpacity () const
 Returns the default opacity.
 
virtual unsigned int getMaximumOpacity () const
 Returns the maximum opacity.
 
virtual unsigned int getOpacitySingleStep () const
 Returns the opacity single step.
 
virtual std::string getOpacitySuffix () const
 Returns the opacity suffix.
 
virtual void setTransparency (unsigned int transparency)
 Sets the transparency.
 
virtual bool hasTransparencyRange () const
 Returns whether the node has the transparency range.
 
virtual unsigned int getDefaultTransparency () const
 Returns the default transparency.
 
virtual unsigned int getMinimumTransparency () const
 Returns the minimum transparency.
 
virtual unsigned int getTransparencySingleStep () const
 Returns the transparency single step.
 
virtual std::string getTransparencySuffix () const
 Returns the transparency suffix.
 
float getInheritedOpacity () const
 Returns the cumulative opacity, when taking into account the ascendants.
 
float getInheritedTransparency () const
 Returns the cumulative transparency, when taking into account the ascendants.
 
bool addMaterial (SBDDataGraphNodeMaterial *material)
 Adds a material. More...
 
bool removeMaterial ()
 Removes the material. More...
 
bool hasMaterial () const
 Returns whether the node has a material (by itself, or inherited)
 
bool ownsMaterial () const
 Returns whether the node owns a material.
 
SBDDataGraphNodeMaterialgetMaterial () const
 Returns the material. More...
 
SBDDataGraphNodegetMaterialOwner () const
 Returns the node whose material is inherited. More...
 
void connectBaseSignalToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *), SBCReferenceTarget *nextReferenceTarget=0, void(SBCReferenceTarget::*nextFunctionPointer)(SBBaseEvent *)=0)
 Connects the base signal to a slot. More...
 
bool baseSignalIsConnectedToSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *)) const
 Returns true when the base signal is connected to a slot.
 
void disconnectBaseSignalFromSlot (SBCReferenceTarget *referenceTarget, void(SBCReferenceTarget::*functionPointer)(SBBaseEvent *))
 Disconnects the base signal from a slot.
 
unsigned int countNodes (SBDDataGraphNode::Type nodeType, bool selectedNodesOnly=false, const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a nodeType, a selection status and a visitPredicate, with our without dependencies. More...
 
unsigned int countNodes (const SBNodePredicate &selectionPredicate=SBDDataGraphNode::All(), const SBNodePredicate &visitPredicate=SBDDataGraphNode::All(), bool includeDependencies=false) const
 Collects nodes into nodeIndexer, based on a selectionPredicate and a visitPredicate, with our without dependencies. More...
 
virtual std::string getHierarchyString (const std::string &separator=" / ", bool includeNodeType=false) const
 Returns a string with hierarchical information on the node and its parents names. More...
 
virtual unsigned int getNumberOfStructuralModels ()
 Returns the number of structural models.
 
 SB_DECLARE_DATA (SBDDataGraphNode)
 
- Public Member Functions inherited from SBCReferenceTarget
 SBCReferenceTarget ()
 
virtual ~SBCReferenceTarget ()
 
unsigned int getMemoryFootprint () const
 
void printReferencesToOwners () const
 
- Static Public Member Functions inherited from SBMStructuralModelNode
static void forEachStructuralNodeInSelection (std::vector< SBMStructuralModelNode * > &selection, void(*action)(SBMStructuralModelNode *node))
 
static void forEachStructuralNodeInSelection (std::vector< SBMStructuralModelNode * > &selection, SBCClass *object, void(SBCClass::*action)(SBMStructuralModelNode *node))
 
- Static Public Member Functions inherited from SBDDataGraphNode
static void clone (const SBNodeIndexer &sourceNodeIndexer, SBNodeIndexer &destinationNodeIndexer)
 Clones the nodes in sourceNodeIndexer (treated as a whole) and places the clones in destinationNodeIndexer. More...
 
static SBDDataGraphNodegetNode (unsigned int nodeIndex)
 Returns the unique node corresponding to the node index nodeIndex. More...
 
static std::string getTypeString (Type type, bool humanReadable=false)
 Returns a string describing the type of the data graph node. More...
 
static void forEachNodeInSelection (SBNodeIndexer &nodeIndexer, void(*action)(SBDDataGraphNode *node))
 Performs an action for each node in a selection.
 
static void forEachNodeInSelection (SBNodeIndexer &nodeIndexer, SBCClass *object, void(SBCClass::*action)(SBDDataGraphNode *node))
 Performs an action for each node in a selection.
 
- Protected Member Functions inherited from SBMStructuralModelNodeGroup
 SBMStructuralModelNodeGroup (SBMStructuralModelNodeGroupData *dataPointer)
 Builds a base object.
 
- Protected Member Functions inherited from SBMStructuralModelNode
 SBMStructuralModelNode ()
 Builds a structural model node.
 
 SBMStructuralModelNode (SBMStructuralModelNodeData *dataPointer)
 Builds a structural model node.
 
- Protected Member Functions inherited from SBMModelNode
 SBMModelNode ()
 Builds a base object.
 
 SBMModelNode (SBMModelNodeData *dataPointer)
 Builds a base object.
 
virtual ~SBMModelNode ()
 
- Protected Member Functions inherited from SBDDataGraphNode
 SBDDataGraphNode ()
 Builds a data graph node. More...
 
 SBDDataGraphNode (SBDDataGraphNodeData *dataPointer)
 Builds a data graph node.
 
virtual ~SBDDataGraphNode ()
 Destroys the node. More...
 
- Protected Member Functions inherited from SBCReferenceTarget
void removeAllReferenceOwners ()
 
 SBCReferenceTarget (SBCReferenceTargetData *dataPointer)
 
- Protected Attributes inherited from SBCReferenceTarget
SBCReferenceTargetData * dataPointer
 

Member Enumeration Documentation

◆ HydrophobicityScale

Enumerator
KyteDoolittle1982 

A hydrophobicity scale of Kyte J, Doolittle RF, "A simple method for displaying the hydropathic character of a protein", J Mol Biol. 1982. DOI: https://doi.org/10.1016/0022-2836(82)90515-0.

SeredaEtAl1994 

A hydrophobicity scale of Sereda TJ et al. 1994. DOI: https://doi.org/10.1016/0021-9673(94)00371-8.

MoneraEtAl1995 

A hydrophobicity scale of Monera et al. 1995. DOI: https://doi.org/10.1002/psc.310010507.

WimleyWhite1996 

A hydrophobicity scale of Wimley WC, White SH, "Experimentally determined hydrophobicity scale for proteins at membrane interfaces", Nat Struct Biol. 1996. DOI: https://doi.org/10.1038/nsb1096-842.

HessaEtAl2005 

A hydrophobicity scale of Hessa T et al. "Recognition of transmembrane helices by the endoplasmic reticulum translocon". Nature. 2005. DOI: https://doi.org/10.1038/nature03216.

ZhaoLondon2006 

A hydrophobicity scale of Zhao G, London E. "An amino acid “transmembrane tendency” scale that approaches the theoretical limit to accuracy for prediction of transmembrane helices: relationship to biological hydrophobicity". Protein Sci. 2006. DOI: https://doi.org/10.1110/ps.062286306.

MoonFleming2011 

A hydrophobicity scale of Moon CP, Fleming KG. "Side-chain hydrophobicity scale derived from transmembrane protein folding into lipid bilayers". Proc Natl Acad Sci USA. 2011. DOI: https://doi.org/10.1073/pnas.1103979108.

◆ ResidueType

Enumerator
Undefined 

Undefined residue type.

ALA 

Alanine.

ARG 

Arginine.

ASP 

Aspartic acid.

ASN 

Asparagine.

VAL 

Valine.

HIS 

Histidine.

GLY 

Glycine.

GLU 

Glutamic acid.

GLN 

Glutamine.

ILE 

Isoleucine.

LEU 

Leucine.

LYS 

Lysine.

MET 

Methionine.

PRO 

Proline.

SER 

Serine.

TYR 

Tyrosine.

THR 

Threonine.

TRP 

Tryptophan.

PHE 

Phenylalanine.

CYS 

Cysteine.

ASX 

ASN or ASP (Asparagine or Aspartic acid)

GLX 

GLN or GLU (Glutamine or Glutamic acid)

XLE 

LEU or ILE (Leucine or Isoleucine)

XAA 

Unknown residue type.

SEC 

Selenocysteine.

PYL 

Pyrrolysine.

Adenosine-5'-monophosphate.

Cytidine-5'-monophosphate.

Guanosine-5'-monophosphate.

Uridine-5'-monophosphate.

Inosinic acid.

DA 

2'-deoxyadenosine-5'-monophosphate

DC 

2'-deoxycytidine-5'-monophosphate

DG 

2'-deoxyguanosine-5'-monophosphate

DT 

Thymidine-5'-monophosphate.

DI 

2'-deoxyinosine-5'-monophosphate

◆ SecondaryStructureType

Enumerator
Unstructured 

Unstructured secondary structure element.

Alpha 

Alpha helix secondary structure element.

Beta 

Beta strand/sheet secondary structure element.

◆ SideChainCharge

Enumerator
UndefinedSideChainCharge 

Undefined side chain charge.

Negative 

Residue has a side chain with negative charge.

Neutral 

Residue has a side chain with neutral charge.

Positive 

Residue has a side chain with positive charge.

◆ SideChainPolarity

Enumerator
UndefinedSideChainPolarity 

Undefined side chain polarity.

Nonpolar 

Residue has a nonpolar side chain.

Polar 

Residue has a polar side chain.

AcidicPolar 

Residue has a side chain with acidic polarity.

BasicPolar 

Residue has a side chain with basic polarity.

Member Function Documentation

◆ computeNucleicAcidChiAngle()

SBQuantity::dimensionless SBMStructuralModelNodeResidue::computeNucleicAcidChiAngle ( )

Computes the chi dihedral angle (in degrees) for the nucleic acid's backbone: for pyrimidines(Y): O4'-C1'-N1-C2 for purines(R): O4'-C1'-N9-C4

◆ getDissociationConstant1() [1/2]

double SBMStructuralModelNodeResidue::getDissociationConstant1 ( ) const

SBMStructuralModelNodeResidue::getDissociationConstant1.

Returns
Returns the pKa1 value (the negative of the logarithm of the dissociation constant for the carboxyl functional group, -COOH) for this residue

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getDissociationConstant1() [2/2]

double SBMStructuralModelNodeResidue::getDissociationConstant1 ( const ResidueType  residueType)
static

SBMStructuralModelNodeResidue::getDissociationConstant1.

Parameters
residueTypeThe type of the residue
Returns
Returns the pKa1 value (the negative of the logarithm of the dissociation constant for the carboxyl functional group, -COOH) for the residue residueType

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getDissociationConstant2() [1/2]

double SBMStructuralModelNodeResidue::getDissociationConstant2 ( ) const

SBMStructuralModelNodeResidue::getDissociationConstant2.

Returns
Returns the pKa2 value (the negative of the logarithm of the dissociation constant for the amino functional group, -NH3) for this residue

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getDissociationConstant2() [2/2]

double SBMStructuralModelNodeResidue::getDissociationConstant2 ( const ResidueType  residueType)
static

SBMStructuralModelNodeResidue::getDissociationConstant2.

Parameters
residueTypeThe type of the residue
Returns
Returns the pKa2 value (the negative of the logarithm of the dissociation constant for the amino functional group, -NH3) for the residue residueType

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getIsoelectricPointPH() [1/2]

double SBMStructuralModelNodeResidue::getIsoelectricPointPH ( ) const

SBMStructuralModelNodeResidue::getIsoelectricPointPH.

Returns
Returns the pI value (the pH at the isoelectric point) for this residue

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getIsoelectricPointPH() [2/2]

double SBMStructuralModelNodeResidue::getIsoelectricPointPH ( const ResidueType  residueType)
static

SBMStructuralModelNodeResidue::getIsoelectricPointPH.

Parameters
residueTypeThe type of the residue
Returns
Returns the pI value (the pH at the isoelectric point) for the residue residueType

Reference: D.R. Lide, Handbook of Chemistry and Physics, 72nd Edition, CRC Press, Boca Raton, FL, 1991.

◆ getSideChainCharge() [1/2]

SBMStructuralModelNodeResidue::SideChainCharge SBMStructuralModelNodeResidue::getSideChainCharge ( ) const

SBMStructuralModelNodeResidue::getSideChainCharge.

Returns
The charge of the residue's side chain at physiological pH 7.4

Reference: Cooper GM, Hausman RE (2004). The cell: a molecular approach. Washington, D.C: ASM Press. p. 51. ISBN 978-0-87893-214-6.

◆ getSideChainCharge() [2/2]

SBMStructuralModelNodeResidue::SideChainCharge SBMStructuralModelNodeResidue::getSideChainCharge ( const ResidueType  residueType)
static

SBMStructuralModelNodeResidue::getSideChainCharge.

Parameters
residueTypeThe type of the residue
Returns
The charge of the residue's residueType side chain at physiological pH 7.4

Reference: Cooper GM, Hausman RE (2004). The cell: a molecular approach. Washington, D.C: ASM Press. p. 51. ISBN 978-0-87893-214-6.

◆ getSideChainPolarity() [1/2]

SBMStructuralModelNodeResidue::SideChainPolarity SBMStructuralModelNodeResidue::getSideChainPolarity ( ) const

SBMStructuralModelNodeResidue::getSideChainPolarity.

Returns
The polarity of the residue's side chain

Reference: Cooper GM, Hausman RE (2004). The cell: a molecular approach. Washington, D.C: ASM Press. p. 51. ISBN 978-0-87893-214-6.

◆ getSideChainPolarity() [2/2]

SBMStructuralModelNodeResidue::SideChainPolarity SBMStructuralModelNodeResidue::getSideChainPolarity ( const ResidueType  residueType)
static

SBMStructuralModelNodeResidue::getSideChainPolarity.

Parameters
residueTypeThe type of the residue
Returns
The polarity of the residue's residueType side chain

Reference: Cooper GM, Hausman RE (2004). The cell: a molecular approach. Washington, D.C: ASM Press. p. 51. ISBN 978-0-87893-214-6.