Ardour  9.0-pre0-582-g084a23a80d
PortGroup Class Reference

#include <port_group.h>

Inheritance diagram for PortGroup:
[legend]

Classes

struct  BundleRecord
 

Public Types

typedef std::list< BundleRecord * > BundleList
 

Public Member Functions

 PortGroup (std::string const &n)
 
 ~PortGroup ()
 
void add_bundle (std::shared_ptr< ARDOUR::Bundle >, bool allow_dups=false)
 
void add_bundle (std::shared_ptr< ARDOUR::Bundle >, std::shared_ptr< ARDOUR::IO > io)
 
void add_bundle (std::shared_ptr< ARDOUR::Bundle >, std::shared_ptr< ARDOUR::IO >, Gdk::Color)
 
void remove_bundle (std::shared_ptr< ARDOUR::Bundle >)
 
std::shared_ptr< ARDOUR::Bundleonly_bundle ()
 
void clear ()
 
ARDOUR::ChanCount total_channels () const
 
std::shared_ptr< ARDOUR::IOio_from_bundle (std::shared_ptr< ARDOUR::Bundle >) const
 
void remove_duplicates ()
 
bool has_port (std::string const &) const
 
BundleList const & bundles () const
 

Public Attributes

std::string name
 name for the group More...
 
PBD::Signal< void()> Changed
 
PBD::Signal< void(ARDOUR::Bundle::Change)> BundleChanged
 

Private Member Functions

void bundle_changed (ARDOUR::Bundle::Change)
 
void add_bundle_internal (std::shared_ptr< ARDOUR::Bundle >, std::shared_ptr< ARDOUR::IO >, bool, Gdk::Color, bool)
 

Private Attributes

BundleList _bundles
 

Detailed Description

A list of bundles grouped by some aspect of their type e.g. busses, tracks, system. A group has 0 or more bundles.

Definition at line 49 of file port_group.h.

Member Typedef Documentation

◆ BundleList

typedef std::list<BundleRecord*> PortGroup::BundleList

Definition at line 87 of file port_group.h.

Constructor & Destructor Documentation

◆ PortGroup()

PortGroup::PortGroup ( std::string const &  n)

◆ ~PortGroup()

PortGroup::~PortGroup ( )

Member Function Documentation

◆ add_bundle() [1/3]

void PortGroup::add_bundle ( std::shared_ptr< ARDOUR::Bundle ,
bool  allow_dups = false 
)

◆ add_bundle() [2/3]

void PortGroup::add_bundle ( std::shared_ptr< ARDOUR::Bundle ,
std::shared_ptr< ARDOUR::IO io 
)

◆ add_bundle() [3/3]

void PortGroup::add_bundle ( std::shared_ptr< ARDOUR::Bundle ,
std::shared_ptr< ARDOUR::IO ,
Gdk::Color   
)

◆ add_bundle_internal()

void PortGroup::add_bundle_internal ( std::shared_ptr< ARDOUR::Bundle ,
std::shared_ptr< ARDOUR::IO ,
bool  ,
Gdk::Color  ,
bool   
)
private

◆ bundle_changed()

void PortGroup::bundle_changed ( ARDOUR::Bundle::Change  )
private

◆ bundles()

BundleList const& PortGroup::bundles ( ) const
inline

Definition at line 89 of file port_group.h.

◆ clear()

void PortGroup::clear ( )

◆ has_port()

bool PortGroup::has_port ( std::string const &  ) const

◆ io_from_bundle()

std::shared_ptr<ARDOUR::IO> PortGroup::io_from_bundle ( std::shared_ptr< ARDOUR::Bundle ) const

◆ only_bundle()

std::shared_ptr<ARDOUR::Bundle> PortGroup::only_bundle ( )

◆ remove_bundle()

void PortGroup::remove_bundle ( std::shared_ptr< ARDOUR::Bundle )

◆ remove_duplicates()

void PortGroup::remove_duplicates ( )

◆ total_channels()

ARDOUR::ChanCount PortGroup::total_channels ( ) const

Member Data Documentation

◆ _bundles

BundleList PortGroup::_bundles
private

Definition at line 97 of file port_group.h.

◆ BundleChanged

PBD::Signal<void(ARDOUR::Bundle::Change)> PortGroup::BundleChanged

An individual bundle on our list has changed in some way

Definition at line 73 of file port_group.h.

◆ Changed

PBD::Signal<void()> PortGroup::Changed

The bundle list has changed in some way; a bundle has been added or removed, or the list cleared etc.

Definition at line 70 of file port_group.h.

◆ name

std::string PortGroup::name

name for the group

Definition at line 65 of file port_group.h.


The documentation for this class was generated from the following file: