% +------------------------------------------------------------------------+
% | Reference manual page: Chain.tex
% +------------------------------------------------------------------------+
% | 10.04.2009   Author
% | Package: PDB
% |
\RCSdef{\RCSChainRev}{$Id: header.tex 40270 2007-09-07 15:29:10Z lsaboret $}
\RCSdefDate{\RCSChainDate}{$Date: 2007-09-07 08:29:10 -0700 (Fri, 07 Sep 2007) $}
% |
\ccRefPageBegin
%%RefPage: end of header, begin of main body
% +------------------------------------------------------------------------+


\begin{ccRefClass}[PDB::]{Chain}  %% add template arg's if necessary

%% \ccHtmlCrossLink{}     %% add further rules for cross referencing links
%% \ccHtmlIndexC[class]{} %% add further index entries

\ccDefinition

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccDefinition)

A class representing a single chain of a protein.

%END-AUTO(\ccDefinition)
  
% The section below is automatically generated. Do not edit!
%START-AUTO(\ccInclude)

\ccInclude{CGAL/PDB/Chain.h}

%END-AUTO(\ccInclude)

\ccIsModel

\ccTypes

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccTypes)

\ccNestedType{Monomer_key}
{
The type for storing residue indices in the PDB.
}
\ccGlue
\ccNestedType{IR_key}
{
}
\ccGlue
\ccNestedType{Container}
{
}
\ccGlue
\ccNestedType{Monomers}
{
}
\ccGlue
\ccNestedType{Monomer_consts}
{
}
\ccGlue
\ccNestedType{Bond}
{
A chemical bond within the protein.
}
\ccGlue
\ccNestedType{Atoms}
{
An iterator to iterate through all the atoms of the protein
}
\ccGlue
\ccNestedType{Atom_consts}
{
}
\ccGlue
\ccNestedType{Bonds}
{
}
\ccGlue

%END-AUTO(\ccTypes)

\ccCreation
\ccCreationVariable{a}  %% choose variable name

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccCreation)

\ccConstructor{Chain();}
{
Default.
}
\ccGlue

%END-AUTO(\ccCreation)

\ccOperations

% The section below is automatically generated. Do not edit!
%START-AUTO(\ccOperations)

\ccMethod{Monomers monomers();}
{
}
\ccGlue
\ccMethod{Monomer_consts monomers() const;}
{
}
\ccGlue
\ccMethod{void insert(Monomer_key k, const Monomer& m);}
{
}
\ccGlue
\ccMethod{Atoms atoms();}
{
}
\ccGlue
\ccMethod{Atom_consts atoms() const;}
{
}
\ccGlue
\ccMethod{unsigned int number_of_atoms() const;}
{
This is non-const time.
}
\ccGlue
\ccMethod{Bonds bonds() const;}
{
}
\ccGlue
\ccMethod{unsigned int number_of_bonds() const;}
{
This is non-const time.
}
\ccGlue
\ccMethod{std::vector<Monomer::Type> sequence() const;}
{
The sequence of residue types.
}
\ccGlue
\ccMethod{int write(char chain, int start_index, std::ostream& out) const;}
{
Write as part of pdb file.
}
\ccGlue
\ccMethod{void write_pdb(std::ostream& out) const;}
{
Write a pdb file.
See \ccc{check_protein}.cpp for an example of using this to write a pdb file.
}
\ccGlue
\ccMethod{void dump(std::ostream& out) const;}
{
Dump as human readable.
}
\ccGlue
\ccMethod{std::ostream& write(std::ostream& out) const;}
{
Dump as human readable.
}
\ccGlue
\ccMethod{bool contains(Monomer_key k) const;}
{
}
\ccGlue
\ccMethod{Monomers::iterator::reference get(Monomer_key k);}
{
}
\ccGlue
\ccMethod{Monomers::iterator find(Monomer_key k);}
{
}
\ccGlue
\ccMethod{Monomer_consts::const_iterator::value_type get(Monomer_key k) const;}
{
}
\ccGlue
\ccMethod{Monomer_consts::const_iterator find(Monomer_key k) const;}
{
}
\ccGlue
\ccMethod{bool has_bonds() const;}
{
Return whether bonds have been computed for this protein.
}
\ccGlue
\ccMethod{void set_has_bonds(bool tf);}
{
Set whether the protein has bonds or not.
}
\ccGlue
\ccMethod{const std::string& name() const;}
{
}
\ccGlue
\ccMethod{void set_name(const std::string& k);}
{
}
\ccGlue

%END-AUTO(\ccOperations)

\ccSeeAlso

\ccExample

A short example program.
Instead of a short program fragment, a full running program can be
included using the 
\verb|\ccIncludeExampleCode{PDB/Chain.C}| 
macro. The program example would be part of the source code distribution and
also part of the automatic test suite.

\begin{ccExampleCode}
void your_example_code() {
}
\end{ccExampleCode}

%% \ccIncludeExampleCode{PDB/Chain.C}

\end{ccRefClass}

% +------------------------------------------------------------------------+
%%RefPage: end of main body, begin of footer
\ccRefPageEnd
% EOF
% +------------------------------------------------------------------------+

