Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
Domain_label_traits Class Reference

Model of MolecularSystemLabelTraits for molecular complexes defined in a file. More...

#include <Domain_label_traits.hpp>

Static Public Member Functions

static unsigned get_number_of_labels (void)
 Total number of system's labels. More...
 
static unsigned get_number_of_primitive_labels (void)
 Number of primitive system's labels. More...
 
static Label get_parent_of (Label label)
 Return the parent label of the input label. More...
 
static std::string to_string (Label label)
 Return the string representation of the label. More...
 
static int get_current_set_of_labels_index (void)
 Return the current index of set of labels to be used. More...
 
static void set_current_set_of_labels_index (unsigned i)
 Set the current index of set of labels to be used. More...
 

Detailed Description

Model of MolecularSystemLabelTraits for molecular complexes defined in a file.

The specification follows these rules:

  \li template of domains: when several chains share the same set
  of domains, it is natural to define only once the domains as a
  template, and use this template for each chain. A template
  starts with the command <b>domains-template-begin
  \<template-name\></b> and terminates with the command
  <b>end</b>. To add a domain to the template, use the following
  syntax: <b>\<domain-name\> [resid-resid|resid|*] [...] </b>. The
  first argument is the name of the domain, while all the
  following arguments define the residues in the domain:
  <b>resid</b> for a specific residue, <b>resid-resid</b> for a
  range of residues, and <b>*</b> for all residues that were not
  included in any other domain of the template. Note that
  <b>*</b> can be used only for one domain in the template and
  without any other residue's id specification for this
  domain. 

  \li chains enumeration: enumerating the chains consist on
  specifying which chains have an associated label, and possibly
  associating a template of domains to the chains. A enumeration
  starts with the command <b>chains-enumeration-begin</b> and
  terminates with the command <b>end</b>. To specify a chain, use
  the following syntax: <b>\<chains\> [like \<template-name\>]
  </b>. The first argument is a list of chains to specify in the
  same way : each chain is represented by its id, that is one
  character. The second optional argument allows to specify a
  template of domains to all the specified chains. If no template
  of domains is given, the entire chains are considered. As a
  result, one primitive label will be created for each specified
  chain with no template of domains, and one hierarchical label
  for each specified chain with a template of domains. Each such
  label has the name of the chain. Furthermore, for each chain
  decomposed into domains, there is one primitive label per
  domain with name the concatenation of the name of the chain
  with the name of the domain.

  \li chains' hierarchy: the chains' hierarchy defines a way to
  group hierarchically the chains. A hierarchy starts with the
  command <b>chains-hierarchy-begin</b> and terminates with the
  command <b>end</b>. To specify a hierarchy, use the following
  syntax: <b>\<label-name\> chain|\<label-name\> [...] </b>. The
  first argument is the name of hierarchical label, while all the
  following arguments are the name of specified chains or other
  existing hierarchical labels to be grouped under the first hierarchical
  label.

  The next example shows a configuration file for representing
  the contacts within the domains within a homo-trimer (EFF-1):

  \include "../demos/data/secret-C_elegans-EFF-1-partners.txt"

Member Function Documentation

◆ get_current_set_of_labels_index()

static int get_current_set_of_labels_index ( void  )
inlinestaticinherited

Return the current index of set of labels to be used.

◆ get_number_of_labels()

static unsigned get_number_of_labels ( void  )
inlinestaticinherited

Total number of system's labels.

◆ get_number_of_primitive_labels()

static unsigned get_number_of_primitive_labels ( void  )
inlinestaticinherited

Number of primitive system's labels.

◆ get_parent_of()

static Label get_parent_of ( Label  label)
inlinestaticinherited

Return the parent label of the input label.

◆ set_current_set_of_labels_index()

static void set_current_set_of_labels_index ( unsigned  i)
inlinestaticinherited

Set the current index of set of labels to be used.

◆ to_string()

static std::string to_string ( Label  label)
inlinestaticinherited

Return the string representation of the label.