void recompute_bbt_from_frames ();
};
+/** A collection of session locations including unique dedicated locations (loop, punch, etc) */
class LIBARDOUR_API Locations : public SessionHandleRef, public PBD::StatefulDestructible
{
public:
typedef boost::shared_ptr<PluginInfo> PluginInfoPtr;
typedef std::list<PluginInfoPtr> PluginInfoList;
+/** A plugin is an external module (usually 3rd party provided) loaded into Ardour
+ * for the purpose of digital signal processing.
+ *
+ * This class provides an abstraction for methords provided by
+ * all supported plugin standards such as presets, name, parameters etc.
+ *
+ * Plugins are not used directly in Ardour but always wrapped by a PluginInsert.
+ */
class LIBARDOUR_API Plugin : public PBD::StatefulDestructible, public Latent
{
public:
class Diskstream;
class IO;
+/** A track is an route (bus) with a recordable diskstream and
+ * related objects relevant to tracking, playback and editing.
+ *
+ * Specifically a track has regions and playlist objects.
+ */
class LIBARDOUR_API Track : public Route, public PublicDiskstream
{
public:
PBD::Signal0<void> Route::SyncOrderKeys;
PBD::Signal0<void> Route::RemoteControlIDChange;
+/** Base class for all routable/mixable objects (tracks and busses) */
Route::Route (Session& sess, string name, Flag flg, DataType default_type)
: SessionObject (sess, name)
, Automatable (sess)
#include "pbd/signals.h"
#include "pbd/statefuldestructible.h"
+/** Base class for Undo/Redo commands and changesets */
class LIBPBD_API Command : public PBD::StatefulDestructible, public PBD::ScopedConnectionList
{
public:
namespace PBD {
-/* This is a pure virtual class to represent a scalar control.
+/** This is a pure virtual class to represent a scalar control.
*
* Note that it contains no storage/state for the controllable thing that it
* represents. Derived classes must provide set_value()/get_value() methods,
* as a control whose value can range between 0 and 1.0.
*
*/
-
class LIBPBD_API Controllable : public PBD::StatefulDestructible {
public:
enum Flag {
namespace PBD {
+/** a unique ID to identify objects numerically */
class LIBPBD_API ID {
public:
ID ();