diff --git a/.readthedocs.yml b/.readthedocs.yml index 134b6ac..2306f67 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -6,8 +6,8 @@ build: python: "mambaforge-22.9" conda: - environment: doc/environment.yml + environment: conda/environment.yml sphinx: # Path to your Sphinx configuration file. - configuration: doc/conf.py \ No newline at end of file + configuration: doc/conf.py diff --git a/doc/_dvlpt/modules.rst b/doc/_dvlpt/modules.rst index 8de5591..1dbbb07 100644 --- a/doc/_dvlpt/modules.rst +++ b/doc/_dvlpt/modules.rst @@ -1,7 +1,23 @@ -src -=== +CORE's API +========== .. toctree:: - :maxdepth: 4 + :maxdepth: 4 + :caption: Contents: - openalea + openalea.core.algo.rst + openalea.core.control.rst + openalea.core.formatting.rst + openalea.core.graph.interface.rst + openalea.core.graph.rst + openalea.core.interpreter.rst + openalea.core.plugin.builtin.rst + openalea.core.plugin.formatting.rst + openalea.core.plugin.rst + openalea.core.project.formatting.rst + openalea.core.project.rst + openalea.core.scene.rst + openalea.core.service.rst + openalea.core.system.rst + openalea.core.world.rst + openalea.core.rst diff --git a/doc/_dvlpt/openalea.core.rst b/doc/_dvlpt/openalea.core.rst index 63dd2dc..ddcd371 100644 --- a/doc/_dvlpt/openalea.core.rst +++ b/doc/_dvlpt/openalea.core.rst @@ -1,23 +1,6 @@ openalea.core package ===================== -Subpackages ------------ - -.. toctree:: - - openalea.core.algo - openalea.core.control - openalea.core.formatting - openalea.core.graph - openalea.core.interpreter - openalea.core.plugin - openalea.core.project - openalea.core.scene - openalea.core.service - openalea.core.system - openalea.core.world - Submodules ---------- diff --git a/doc/index.rst b/doc/index.rst index fdf37c8..19899fd 100644 --- a/doc/index.rst +++ b/doc/index.rst @@ -16,7 +16,7 @@ Contents :maxdepth: 1 Installation - Overview of different classes + Usage Reference Guide<_dvlpt/modules.rst> Indices and tables diff --git a/doc/usage.rst b/doc/usage.rst index b20ac5a..cd58f84 100644 --- a/doc/usage.rst +++ b/doc/usage.rst @@ -44,9 +44,3 @@ that returns a list of nodes. To access to a particular node, use: The `floor` node exists in the `openalea.math` package. The node `floor` is managed through a :class:`NodeFactory`. - - - -.. topic:: Documentation status - - .. sectionauthor:: Thomas Cokelaer \ No newline at end of file diff --git a/doc/user/autosum.rst b/doc/user/autosum.rst deleted file mode 100644 index 89f4491..0000000 --- a/doc/user/autosum.rst +++ /dev/null @@ -1,539 +0,0 @@ -.. _core_reference: - -Reference guide -############### -.. contents:: - -Class Inheritance diagram -========================= -.. .. inheritance-diagram:: openalea.core.actor -.. .. inheritance-diagram:: openalea.core.alea -.. .. inheritance-diagram:: #openalea.core.algo.dataflow.copy -.. .. inheritance-diagram:: #openalea.core.algo.dataflow.evaluation -.. .. inheritance-diagram:: openalea.core.category -.. .. inheritance-diagram:: openalea.core.cli -.. .. inheritance-diagram:: openalea.core.compositenode -.. .. inheritance-diagram:: openalea.core.data -.. .. inheritance-diagram:: openalea.core.dataflow -.. .. inheritance-diagram:: openalea.core.datapool -.. .. inheritance-diagram:: #openalea.core.export.app -.. .. inheritance-diagram:: openalea.core.graph.graph -.. .. inheritance-diagram:: #openalea.core.graph.id.generator -.. .. inheritance-diagram:: openalea.core.graph.interface.graph -.. .. inheritance-diagram:: openalea.core.graph.interface.graphconcept -.. .. inheritance-diagram:: openalea.core.graph.interface.latticeconcept -.. .. inheritance-diagram:: #openalea.core.graph.interface.port.graph -.. .. inheritance-diagram:: #openalea.core.graph.interface.property.graph -.. .. inheritance-diagram:: openalea.core.graph.interface.treeconcept -.. .. inheritance-diagram:: #openalea.core.graph.property.graph -.. .. inheritance-diagram:: openalea.core.interface -.. .. inheritance-diagram:: openalea.core.metaclass -.. .. inheritance-diagram:: openalea.core.node -.. .. inheritance-diagram:: openalea.core.observer -.. .. inheritance-diagram:: openalea.core.package -.. .. inheritance-diagram:: openalea.core.path -.. .. inheritance-diagram:: openalea.core.pkgdict -.. .. inheritance-diagram:: openalea.core.pkgmanager -.. .. inheritance-diagram:: openalea.core.session -.. .. inheritance-diagram:: openalea.core.settings -.. .. inheritance-diagram:: openalea.core.signature -.. .. inheritance-diagram:: openalea.core.singleton -.. .. inheritance-diagram:: openalea.core.system.systemnodes -.. .. inheritance-diagram:: openalea.core.threadmanager -.. .. inheritance-diagram:: openalea.core.traitsui -.. .. inheritance-diagram:: openalea.core.vlab - -.. currentmodule:: openalea.core.actor - -:mod:`openalea.core.actor` module -================================= - -Download the source file :download:`../../src/core/actor.py`. - - -.. automodule:: openalea.core.actor - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module provides an actor interface - - -.. currentmodule:: openalea.core.alea - -:mod:`openalea.core.alea` module -================================ - -Download the source file :download:`../../src/core/alea.py`. - - -.. automodule:: openalea.core.alea - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: a script to run alea dataflow and scripts - - -.. currentmodule:: openalea.core.category - -:mod:`openalea.core.category` module -==================================== - -Download the source file :download:`../../src/core/category.py`. - - -.. automodule:: openalea.core.category - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines category keywords to be used within wrale... - - -.. currentmodule:: openalea.core.cli - -:mod:`openalea.core.cli` module -=============================== - -Download the source file :download:`../../src/core/cli.py`. - - -.. automodule:: openalea.core.cli - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines the command line interface. - - -.. currentmodule:: openalea.core.compositenode - -:mod:`openalea.core.compositenode` module -========================================= - -Download the source file :download:`../../src/core/compositenode.py`. - - -.. automodule:: openalea.core.compositenode - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: A CompositeNode is a Node that contains other nodes connected... - - -.. currentmodule:: openalea.core.data - -:mod:`openalea.core.data` module -================================ - -Download the source file :download:`../../src/core/data.py`. - - -.. automodule:: openalea.core.data - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Data management classes - - -.. currentmodule:: openalea.core.dataflow - -:mod:`openalea.core.dataflow` module -==================================== - -Download the source file :download:`../../src/core/dataflow.py`. - - -.. automodule:: openalea.core.dataflow - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module provide an implementation of a dataflow - - -.. currentmodule:: openalea.core.datapool - -:mod:`openalea.core.datapool` module -==================================== - -Download the source file :download:`../../src/core/datapool.py`. - - -.. automodule:: openalea.core.datapool - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: DataPool is a global dictionnary to share data between node - -.. currentmodule:: openalea.core.external - -:mod:`openalea.core.external` module -==================================== - -.. automodule:: openalea.core.external - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: todo - - -.. currentmodule:: openalea.core.graph.graph - -:mod:`openalea.core.graph.graph` module -======================================= - -Download the source file :download:`../../src/core/graph/graph.py`. - - -.. automodule:: openalea.core.graph.graph - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module provide a simple pure python implementation for a - - -.. currentmodule:: openalea.core.graph.interface.graph - -:mod:`openalea.core.graph.interface.graph` module -================================================= - -Download the source file :download:`../../src/core/graph/interface/graph.py`. - - -.. automodule:: openalea.core.graph.interface.graph - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module provide a set of graph concepts to form a graph i... - - -.. currentmodule:: openalea.core.graph.interface.graphconcept - -:mod:`openalea.core.graph.interface.graphconcept` module -======================================================== - -Download the source file :download:`../../src/core/graph/interface/graphconcept.py`. - - -.. automodule:: openalea.core.graph.interface.graphconcept - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: A graph Interface. - - -.. currentmodule:: openalea.core.graph.interface.latticeconcept - -:mod:`openalea.core.graph.interface.latticeconcept` module -========================================================== - -Download the source file :download:`../../src/core/graph/interface/latticeconcept.py`. - - -.. automodule:: openalea.core.graph.interface.latticeconcept - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Lattice Interface - - -.. currentmodule:: openalea.core.graph.interface.treeconcept - -:mod:`openalea.core.graph.interface.treeconcept` module -======================================================= - -Download the source file :download:`../../src/core/graph/interface/treeconcept.py`. - - -.. automodule:: openalea.core.graph.interface.treeconcept - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Tree Concept. - - -.. currentmodule:: openalea.core.interface - -:mod:`openalea.core.interface` module -===================================== - -Download the source file :download:`../../src/core/interface.py`. - - -.. automodule:: openalea.core.interface - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines Interface classes (I/O types) - - - - -.. currentmodule:: openalea.core.logger - -:mod:`openalea.core.logger` module -==================================== - -Download the source file :download:`../../src/core/logger.py`. - - -.. automodule:: openalea.core.logger - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines the logger api for Openalea related software. - - - -.. currentmodule:: openalea.core.metaclass - -:mod:`openalea.core.metaclass` module -===================================== - -Download the source file :download:`../../src/core/metaclass.py`. - - -.. automodule:: openalea.core.metaclass - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: todo - - -.. currentmodule:: openalea.core.node - -:mod:`openalea.core.node` module -================================ - -Download the source file :download:`../../src/core/node.py`. - - -.. automodule:: openalea.core.node - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Node and NodeFactory classes. - - -.. currentmodule:: openalea.core.observer - -:mod:`openalea.core.observer` module -==================================== - -Download the source file :download:`../../src/core/observer.py`. - - -.. automodule:: openalea.core.observer - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines all the classes for the Observer design P... - - -.. currentmodule:: openalea.core.package - -:mod:`openalea.core.package` module -=================================== - -Download the source file :download:`../../src/core/package.py`. - - -.. automodule:: openalea.core.package - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines Package classes. - - -.. currentmodule:: openalea.core.path - -:mod:`openalea.core.path` module -================================ - -Download the source file :download:`../../src/core/path.py`. - - -.. automodule:: openalea.core.path - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: path.py - An object representing a path to a file or directo... - - -.. currentmodule:: openalea.core.pkgdict - -:mod:`openalea.core.pkgdict` module -=================================== - -Download the source file :download:`../../src/core/pkgdict.py`. - - -.. automodule:: openalea.core.pkgdict - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Special Dict with case insensitive key and protected field - - -.. currentmodule:: openalea.core.pkgmanager - -:mod:`openalea.core.pkgmanager` module -====================================== - -Download the source file :download:`../../src/core/pkgmanager.py`. - - -.. automodule:: openalea.core.pkgmanager - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines the package manager. - - -.. currentmodule:: openalea.core.session - -:mod:`openalea.core.session` module -=================================== - -Download the source file :download:`../../src/core/session.py`. - - -.. automodule:: openalea.core.session - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Session regroups all the data which can be stored between dif... - - -.. currentmodule:: openalea.core.settings - -:mod:`openalea.core.settings` module -==================================== - -Download the source file :download:`../../src/core/settings.py`. - - -.. automodule:: openalea.core.settings - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Setting class retrieve and set user configuration - - -.. currentmodule:: openalea.core.signature - -:mod:`openalea.core.signature` module -===================================== - -Download the source file :download:`../../src/core/signature.py`. - - -.. automodule:: openalea.core.signature - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: Signature class that instropect python functor based on the c... - - -.. currentmodule:: openalea.core.singleton - -:mod:`openalea.core.singleton` module -===================================== - -Download the source file :download:`../../src/core/singleton.py`. - - -.. automodule:: openalea.core.singleton - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines the singleton metaclass - - -.. currentmodule:: openalea.core.system.systemnodes - -:mod:`openalea.core.system.systemnodes` module -============================================== - -Download the source file :download:`../../src/core/system/systemnodes.py`. - - -.. automodule:: openalea.core.system.systemnodes - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: System Nodes - - -.. currentmodule:: openalea.core.threadmanager - -:mod:`openalea.core.threadmanager` module -========================================= - -Download the source file :download:`../../src/core/threadmanager.py`. - - -.. automodule:: openalea.core.threadmanager - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: This module defines the thread manager - - -.. currentmodule:: openalea.core.traitsui - -:mod:`openalea.core.traitsui` module -==================================== - -Download the source file :download:`../../src/core/traitsui.py`. - - -.. automodule:: openalea.core.traitsui - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: View for organizing the component lookout. - - -.. currentmodule:: openalea.core.vlab - -:mod:`openalea.core.vlab` module -================================ - -Download the source file :download:`../../src/core/vlab.py`. - - -.. automodule:: openalea.core.vlab - :members: - :undoc-members: - :inherited-members: - :show-inheritance: - :synopsis: doc todo - diff --git a/src/openalea/core/plugin/__init__.py b/src/openalea/core/plugin/__init__.py index 0db9c66..4be88d6 100644 --- a/src/openalea/core/plugin/__init__.py +++ b/src/openalea/core/plugin/__init__.py @@ -8,9 +8,10 @@ Generally, a plugin code looks like: .. code-block :: python - :filename: ex: mypackage/plugin/applet.py :linenos: + #filename: ex: mypackage/plugin/applet.py + class PluginMyApplet(object): name = 'MyApplet' label = 'My Applet' diff --git a/src/openalea/core/plugin/interface.py b/src/openalea/core/plugin/interface.py index 24e8265..3744ab9 100644 --- a/src/openalea/core/plugin/interface.py +++ b/src/openalea/core/plugin/interface.py @@ -3,12 +3,6 @@ interface plugin documentation ============================== -Details -======= - -.. autoclass:: openalea.oalab.interface.IPluginInterface - :members: __call__, name - """ class IPluginInterface(object): diff --git a/src/openalea/core/plugin/manager.py b/src/openalea/core/plugin/manager.py index 3f82ec5..3f55053 100644 --- a/src/openalea/core/plugin/manager.py +++ b/src/openalea/core/plugin/manager.py @@ -9,8 +9,9 @@ A plugin manager class is used to load plugins, search among it and manage the list of loaded plugins. Plugins are loaded from entry points or can be added dynamically to manager. - - To *list* plugins, see :meth:`PluginManager.plugin` and :meth:`PluginManager.plugins`. - - To *add* plugins dynamically, see :meth:`PluginManager.add_plugin` and :meth:`PluginManager.add_plugins`. + +- To *list* plugins, see :meth:`PluginManager.plugin` and :meth:`PluginManager.plugins`. +- To *add* plugins dynamically, see :meth:`PluginManager.add_plugin` and :meth:`PluginManager.add_plugins`. All plugin are sorted in categories, each group defining a contract. This contract is generally described in an interface class or documentation.