File: mainpage.dox

package info (click to toggle)
avogadrolibs 1.101.0-3
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 78,480 kB
  • sloc: cpp: 139,780; ansic: 2,212; python: 1,435; perl: 321; sh: 90; makefile: 46
file content (59 lines) | stat: -rw-r--r-- 2,669 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
namespace Avogadro {

/**

@mainpage Avogadro Libraries API Documentation

@section avogadro Introduction

The Avogadro libraries are developed to support the Avogadro2 application, and
provide liberally BSD-licensed, open-source reusable components. At its core it
is a platform for developing molecular visualization, editing and interactive
simulation applications. This is achieved using a collection of libraries,
along with a plugin interface allowing the platform to be easily extended and
used in a variety of environments.

@subsection main Main Classes

The Avogadro libraries are implemented as a set of libraries, where all classes
are implemented in the Avogadro namespace, and each library uses a namespace
to distinguish members of that library. Include directories are also divided
up by library, resulting in classes such as Avogadro::Core::Molecule in the
include file <avogadro/core/molecule.h>. Some of the main classes that are
useful to get acquainted with are:

- Core::Molecule : The base molecule class, for representing molecules.
  - Core::Atom : Class representing atoms in a molecule.
  - Core::Bond : Class representing bonds in a molecule.
- Io::FileFormatManager : Convenience functions for file format wrangling.
- Io::FileFormat : Base class for all file format readers and writers.
  - Io::CjsonFormat : Chemical JSON format reader and writeer.
  - Io::CmlFormat : Chemical Markup Language reader/writer.
- Rendering::Scene : Class managing the main scene graph used for rendering.
- Rendering::Drawable : Base class for drawable items in the scene.
  - Rendering::SphereGeometry : Drawable item for spheres.
  - Rendering::CylinderGeometry : Drawable item for cylinders.
- QtGui::PeriodicTableView : A periodic table widget.
- QtOpenGL::GLWidget : Provides an OpenGL based widget for molecule rendering.

If you wish to extend Avogadro the main plugin base classes are:

- QtGui::ScenePlugin : Generate geometry to be rendered in the scene.
- QtGui::ToolPlugin : Base class for mouse interaction, editing, etc.
- QtGui::ExtensionPlugin : Base class for dialog/menu extensions.

@section resources Resources

This project is developed as part of the <a href="http://openchemistry.org/">
Open Chemistry project</a>. Please see the
<a href="http://wiki.openchemistry.org/Development">development guide</a> if
you would like to contribute to the project. Some key resources include:

- Wiki : http://wiki.openchemistry.org/
- Bug tracker : http://projects.openchemistry.org/
- Dashboard : http://cdash.openchemistry.org/index.php?project=AvogadroLibs
- Mailing lists: http://www.openchemistry.org/OpenChemistry/help/mailing.html

 */

}