Class Hierarchy
This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 1234]
 CCErrorManagerError manager kernel default implementation
 CCIdentifierGlobally used identification classThis class is the basic class to use in order to identify objects in the OpenViBE platform. It can be used for class identification, for object identification and any user needed identification process
 CCIdentifierBase class to work with EBML identifiers
 CCMetaboxObjectDescThe CMetaboxObjectDesc virtual BoxAlgorithmDesc for metaboxes
 CCNameValuePairListThis class handles a list of name/value pairs. It handles a (hidden) map associating string keys to string values.This class avoids the need to include stl's map header file in the C++ interface, thus preventing potential compile/link errors when dynamically loading modules
 CCObservableOpenViBE Observable class
 CIBoxComplete OpenViBE box interfaceThis interface can be used in order to fully describe an OpenViBE black box. It describes its identification values, its inputs, its outputs and its settings
 CIScenarioA static OpenViBE scenarioThis class is a static scenario description. It is used to manipulate an OpenViBE box/connection collection..
 CCStringString class to avoid std::string in the interfaceThis class helps avoiding std::string being present in exposed C++ interface, eventually resulting in compile/link errors when dynamically loading modules
 CErrorTypeList of error types
 CGenericVRPNServerA class providing a very simple generic VRPN server capable of creating Analog and Button controls
 CICommandBase abstract struct for commandsA command is an object that encapsulates all necessary information to perform an action later one. Typically, a command implementation should contain an implementation of CommandInterface interface, and a list of properties
 CInitCommandCommand that drives the initialization of the toolInitCommand class contains the following properties:
 CLoadKernelCommandCommand that drives kernel loadingLoadKernelCommand contains the following properties:
 CLoadScenarioCommandCommand that drives scenario loadingLoadScenarioCommand contains the following properties:
 CResetCommandCommand that drives tool reset to its initial state
 CRunScenarioCommandCommand that drives the execution of a list of scenariosRunScenarioCommand contains the following properties:
 CSetupScenarioCommandCommand that drives the setup of a scenarioSetupScenarioCommand contains the following properties:
 CICommandParserBase abstract class for command parserCommand parsers aim at parsing a list of commands from a specific input
 CCommandFileParserParser implementation that parses command a fileThe current implementation retrieves the list of commands from a file
 CCommandLineOptionParserParser implementation that parses command from command-line argumentsThe current implementation retrieves the options from a ProgramOptions parser and simply builds the commands from the parsed options
 CIConfigurationKeywordExpandCallbackCallback used for overriding a keyword in IConfigurationManager
 CIConnectionParallelPossibility to communicate with a parallel port. On Windows, you must have TVicPort library installed (available for free: http://entechtaiwan.com/dev/port/index.shtm)
 CIDriverBase class for all the OpenViBE acquisition server drivers
 CIDriverCallbackBase class for all the OpenViBE acquisition server driver callbacks
 CIDriverContextBase class for kernel functioanlities access from the driver classes
 CIHeaderBase class for an OpenViBE header container
 CIObjectBase class for all the OpenViBE platform objects
 CIKernelLoaderThis class allows an OpenViBE application to load a kernel module
 CIMatrixBasic OpenViBE matrix interface
 CCMatrixBasic standalone OpenViBE matrix implementationThis class offers a basic standalone impementation of the OpenViBE::IMatrix interface. This class can be directly instanciated and used
 CIMemoryBufferBasic OpenViBE memory buffer interface
 CCMemoryBufferBasic standalone OpenViBE memory buffer implementationThis class offers a basic standalone impementation of the OpenViBE::IMemoryBuffer interface. This class can be directly instanciated and used
 CIStimulationSetBasic OpenViBE stimulation set interface
 CCStimulationSetBasic standalone OpenViBE stimulation set implementationThis class offers a basic standalone impementation of the OpenViBE::IStimulationSet interface. This class can be directly instanciated and used
 CIKernelObjectBase class for all kernel objects
 CIAlgorithmContextExectution context for algorithm objects
 CIAlgorithmManagerManager for all kind of plugin algorithms
 CIAlgorithmProtoPrototype interface for algorithm
 CIAlgorithmProxyApplication interface to an algorithm plugin
 CIAttributable
 CIBoxAlgorithmContextSpecific context to use for box algorithm pluginsThis 'context' is given by the player to an algorithm plugin so it has all the necessary tools to work. This algorithm context mainly consists in getting other contexts which could be defined and used more generically (such as the box interface or a global player interface for example)
 CIBoxIOMain OpenViBE box interface to communicate with the kernelThis context allows the object which uses it to check inputs states, read them, write outputs while being in a dynamic context (used by player)
 CIBoxListenerContextExectution context for box algorithm descriptors
 CIBoxProtoOpenViBE box prototypeThis class is used by a plugin algorithm descriptor to let the OpenViBE platform know what an algorithm box looks like. It declares several things, like it input types, output types and settings
 CIConfigurableConfigurable object interface
 CIConfigurationManagerManager for all kind of configuration
 CIErrorInterface for Kernel error implementationIError interface aims at providing information about an error occurring in the framework. One specific concept here is the notion of nested errors. In a call stack, it can be interesting to catch a n-1 level error and enhance it instead of rethrowing it directy unchanged. In this case, we say the level n-1 error is nested into the level n error
 CIErrorManagerInterface for Kernel error handler implementationThis manager is reponsible for handling errors in the framework. Errors in the framework are considered as not acceptable behavior that can be detected and handled by the system. The concept of error is thus independant of warning or fatal crashes that must be handled separately
 CIKernelContextKernel context interface, gives access to each manager the kernel owns
 CIKernelDescA kernel description
 CIKernelObjectFactoryKernel object factory, creates all kernel objects
 CILogListenerLog manager's listener interface
 CIMessageBase message class
 CIMetaboxManagerMetabox manager
 CIMetadataMetadata class for scenarios
 CIObjectVisitorContextExectution context for visitor objects
 CIParameterGeneric parameter handler for configurable objects
 CIPlayerThe main player classA player is responsible for the playback of a specific scenario. This player scenario is provided at initialisation stage and should not be changed until the player terminates. The player idea of calling a "play" function forces the use of threads in order to avoid CPU locking. Thus we prefer the idea of having a "short-time" function that is to be called repeatedly until the player terminates. This is the role of the IPlayer::loop function, that should be called repeatedly by the outside application
 CIPlayerContextPlayer interface for plugin objectsInstances of this class are given to plugin object so they can communicate with the platform kernel, providing services such as message sending etc..
 CIPlayerManagerThe manager responsible for scenario playbackThe player manager is responsible for creating the different player instances. Each player is responsible for the playback of a specific scenario
 CIPluginManagerLog manager
 CIPluginModulePlugin module
 CIPluginModuleContextPlugin context
 CIScenarioManagerThe scenario managerThis manager is responsible to organize and handle all the scenarios of the kernel
 CIServerExtensionContextStatic context of a Server Extension object
 CIServerExtensionDynamicContextDynamic context of a Server Extension objectThis class contains accessors to data structures made available by the driver running in the Acquisition Server during the acquisition
 CIServerExtensionProtoPrototype interface for a server extension
 CITypeManagerType manager, provides information on platform's handled types, parameters, streams etc..
 CIPluginObjectBase class for plugin objectThis class is the base class for all the concrete plugin classes that extend the OpenViBE platform. It comes with several basic functions each plugin should have in order to work in the OpenViBE platform
 CIAlgorithmAbstract algorithm, base element of OpenViBE processing objectsThis class should be derived by any plugin that is related to data processing. It basically has a parameterable interface contained in the IAlgorithmContext object. This interface stores several typed parameters which can be modified either by outside world in order to provide input paramters to this algorithm or by this algorithm itself in order to produce output parameters
 CIBoxAlgorithmAlgorithm to create/process/transform OpenViBE dataThis class should be derived by any plugin that is related to data processing. It can be data acquisition/production from an hardware device or from a file. It can be data processing/transforming, moving time information into frequency space for example. It can be data classification generating discrete classification events better than continuous data flow
 CIPluginObjectDescBase class for plugin descriptorThis class is the base class for all the plugin description classes. It contains basic functions that could be used for each plugin description. Derived plugin descriptions will be used as a prototype of what they can create
 CIAlgorithmDescAlgorithm plugin descriptorThis class should be derived by any plugin developer in order to describe a specific OpenViBE algorithm
 CIBoxAlgorithmDescBox algorithm plugin descriptorThis class should be derived by any plugin developer in order to describe a specific OpenViBE box algorithm
 CIObserverOpenViBE Observer interface
 CIReaderEBML processing class
 CIReaderCallbackCallback class to use when parsing the EBML stream
 CIReaderHelperHelper to read basic EBML types
 CIWriterEBML formating class
 CIWriterCallbackCallback class to use when creating the EBML stream
 CIWriterHelperHelper to write basic EBML types
 CIXMLHandlerThis class is design to help about XML manipulation
 CIXMLNodeSymbolize a node in a XML tree structure
 CKernelFacadeWrapper class used to access Kernel featuresThis class is one-to-many interface used as a central point to access a subset of Kernel features
 CProgramOptions< First, Types >::OptionDesc
 CProgramOptions< First, Types >Command-line options parserThis class is a basic class used to parse program options. Input format requirements:
 CProgramOptionsTraitsHelper class for ProgramOptions type checkingThis class provides aliases to types currently handled by ProgramOptions class as well as type checking meta-programming features
 CPropertyBase class for properties. A property is essentially a <name,value> pair
 CReturnCodeWay of playing a scenario
 CReturnCodeScenario player list of potential return code
 CScopedTest< T >Class used to ensure RAII when using TestFixture
 CTestFixtureBase abstract struct for test fixture
 CTimeStatic functions to handle time within the framework
 CTParameterHandler< T >Helper class in order to manipulate IParameter and IParameter values natively
 CTParameterHandler< OpenViBE::boolean >
 CTParameterHandler< OpenViBE::IMatrix * >
 CTParameterHandler< OpenViBE::IMemoryBuffer * >
 CTParameterHandler< OpenViBE::IStimulationSet * >
 CTParameterHandler< OpenViBE::uint64 >