ardour
Public Member Functions | Static Public Member Functions | Public Attributes | Private Member Functions | Private Attributes | List of all members
ARDOUR::RouteGroup Class Reference

#include <route_group.h>

Inheritance diagram for ARDOUR::RouteGroup:
ARDOUR::SessionObject ARDOUR::SessionHandleRef PBD::StatefulDestructible PBD::ScopedConnectionList PBD::Stateful PBD::Destructible

Public Member Functions

 RouteGroup (Session &s, const std::string &n)
 
 ~RouteGroup ()
 
bool is_active () const
 
bool is_relative () const
 
bool is_hidden () const
 
bool is_gain () const
 
bool is_mute () const
 
bool is_solo () const
 
bool is_recenable () const
 
bool is_select () const
 
bool is_route_active () const
 
bool is_color () const
 
bool is_monitoring () const
 
bool empty () const
 
size_t size () const
 
gain_t get_max_factor (gain_t factor)
 
gain_t get_min_factor (gain_t factor)
 
void set_active (bool yn, void *src)
 
void set_relative (bool yn, void *src)
 
void set_hidden (bool yn, void *src)
 
void set_gain (bool yn)
 
void set_mute (bool yn)
 
void set_solo (bool yn)
 
void set_recenable (bool yn)
 
void set_select (bool yn)
 
void set_route_active (bool yn)
 
void set_color (bool yn)
 
void set_monitoring (bool yn)
 
bool enabled_property (PBD::PropertyID)
 
int add (boost::shared_ptr< Route >)
 
int remove (boost::shared_ptr< Route >)
 
template<typename Function >
void foreach_route (Function f)
 
template<class T >
void apply (void(Track::*func)(T, void *), T val, void *src)
 
void audio_track_group (std::set< boost::shared_ptr< AudioTrack > > &at_set)
 
void clear ()
 
bool has_subgroup () const
 
void make_subgroup (bool, Placement)
 
void destroy_subgroup ()
 
boost::shared_ptr< RouteListroute_list ()
 
XMLNodeget_state ()
 
int set_state (const XMLNode &, int version)
 
- Public Member Functions inherited from ARDOUR::SessionObject
 SessionObject (Session &session, const std::string &name)
 
Sessionsession () const
 
std::string name () const
 
virtual bool set_name (const std::string &str)
 
- Public Member Functions inherited from ARDOUR::SessionHandleRef
 SessionHandleRef (ARDOUR::Session &s)
 
virtual ~SessionHandleRef ()
 
- Public Member Functions inherited from PBD::ScopedConnectionList
 ScopedConnectionList ()
 
virtual ~ScopedConnectionList ()
 
void add_connection (const UnscopedConnection &c)
 
void drop_connections ()
 
- Public Member Functions inherited from PBD::Stateful
 Stateful ()
 
virtual ~Stateful ()
 
virtual bool apply_changes (PropertyBase const &)
 
PropertyChange apply_changes (PropertyList const &)
 
const OwnedPropertyListproperties () const
 
void add_property (PropertyBase &s)
 
void add_extra_xml (XMLNode &)
 
XMLNodeextra_xml (const std::string &str, bool add_if_missing=false)
 
void save_extra_xml (const XMLNode &)
 
const PBD::IDid () const
 
bool set_id (const XMLNode &)
 
void set_id (const std::string &)
 
void reset_id ()
 
void clear_changes ()
 
virtual void clear_owned_changes ()
 
PropertyListget_changes_as_properties (Command *) const
 
virtual void rdiff (std::vector< Command * > &) const
 
bool changed () const
 
virtual PropertyListproperty_factory (const XMLNode &) const
 
virtual void suspend_property_changes ()
 
virtual void resume_property_changes ()
 
bool property_changes_suspended () const
 
- Public Member Functions inherited from PBD::Destructible
 Destructible ()
 
virtual ~Destructible ()
 
void drop_references ()
 

Static Public Member Functions

static void make_property_quarks ()
 
- Static Public Member Functions inherited from ARDOUR::SessionObject
static void make_property_quarks ()
 

Public Attributes

PBD::Signal2< void, RouteGroup
*, boost::weak_ptr
< ARDOUR::Route > > 
RouteAdded
 
PBD::Signal2< void, RouteGroup
*, boost::weak_ptr
< ARDOUR::Route > > 
RouteRemoved
 
- Public Attributes inherited from PBD::Stateful
PBD::Signal1< void, const
PropertyChange & > 
PropertyChanged
 
- Public Attributes inherited from PBD::Destructible
PBD::Signal0< void > Destroyed
 
PBD::Signal0< void > DropReferences
 

Private Member Functions

void remove_when_going_away (boost::weak_ptr< Route >)
 
int set_state_2X (const XMLNode &, int)
 

Private Attributes

boost::shared_ptr< RouteListroutes
 
boost::shared_ptr< Routesubgroup_bus
 
PBD::Property< bool > _relative
 
PBD::Property< bool > _active
 
PBD::Property< bool > _hidden
 
PBD::Property< bool > _gain
 
PBD::Property< bool > _mute
 
PBD::Property< bool > _solo
 
PBD::Property< bool > _recenable
 
PBD::Property< bool > _select
 
PBD::Property< bool > _route_active
 
PBD::Property< bool > _color
 
PBD::Property< bool > _monitoring
 

Additional Inherited Members

- Static Public Attributes inherited from PBD::Stateful
static int current_state_version = 0
 
static int loading_state_version = 0
 
- Protected Member Functions inherited from ARDOUR::SessionHandleRef
virtual void session_going_away ()
 
virtual void insanity_check ()
 
- Protected Member Functions inherited from PBD::Stateful
void add_instant_xml (XMLNode &, const std::string &directory_path)
 
XMLNodeinstant_xml (const std::string &str, const std::string &directory_path)
 
void add_properties (XMLNode &)
 
PropertyChange set_values (XMLNode const &)
 
virtual void post_set (const PropertyChange &)
 
virtual void send_change (const PropertyChange &)
 
virtual void mid_thaw (const PropertyChange &)
 
- Protected Attributes inherited from ARDOUR::SessionObject
PBD::Property< std::string > _name
 
- Protected Attributes inherited from ARDOUR::SessionHandleRef
ARDOUR::Session_session
 
- Protected Attributes inherited from PBD::Stateful
XMLNode_extra_xml
 
XMLNode_instant_xml
 
PBD::PropertyChange _pending_changed
 
Glib::Threads::Mutex _lock
 
std::string _xml_node_name
 name of node to use for this object in XML More...
 
OwnedPropertyList_properties
 

Detailed Description

Definition at line 58 of file route_group.h.

Constructor & Destructor Documentation

ARDOUR::RouteGroup::RouteGroup ( Session s,
const std::string &  n 
)
RouteGroup::~RouteGroup ( )

Definition at line 114 of file route_group.cc.

Member Function Documentation

int RouteGroup::add ( boost::shared_ptr< Route r)

Add a route to a group. Adding a route which is already in the group is allowed; nothing will happen.

Parameters
rRoute to add.

Definition at line 130 of file route_group.cc.

template<class T >
void ARDOUR::RouteGroup::apply ( void(Track::*)(T, void *)  func,
val,
void *  src 
)

Definition at line 29 of file route_group_specialized.h.

void RouteGroup::audio_track_group ( std::set< boost::shared_ptr< AudioTrack > > &  at_set)

Definition at line 439 of file route_group.cc.

void ARDOUR::RouteGroup::clear ( )
inline

Definition at line 117 of file route_group.h.

void RouteGroup::destroy_subgroup ( )

Definition at line 494 of file route_group.cc.

bool ARDOUR::RouteGroup::empty ( ) const
inline

Definition at line 78 of file route_group.h.

bool RouteGroup::enabled_property ( PBD::PropertyID  prop)

Definition at line 516 of file route_group.cc.

template<typename Function >
void ARDOUR::RouteGroup::foreach_route ( Function  f)
inline

Definition at line 103 of file route_group.h.

gain_t RouteGroup::get_max_factor ( gain_t  factor)

Definition at line 198 of file route_group.cc.

gain_t RouteGroup::get_min_factor ( gain_t  factor)

Definition at line 178 of file route_group.cc.

XMLNode & RouteGroup::get_state ( void  )
virtual

Implements PBD::Stateful.

Definition at line 221 of file route_group.cc.

bool RouteGroup::has_subgroup ( ) const

Definition at line 510 of file route_group.cc.

bool ARDOUR::RouteGroup::is_active ( ) const
inline

Definition at line 66 of file route_group.h.

bool ARDOUR::RouteGroup::is_color ( ) const
inline

Definition at line 75 of file route_group.h.

bool ARDOUR::RouteGroup::is_gain ( ) const
inline

Definition at line 69 of file route_group.h.

bool ARDOUR::RouteGroup::is_hidden ( ) const
inline

Definition at line 68 of file route_group.h.

bool ARDOUR::RouteGroup::is_monitoring ( ) const
inline

Definition at line 76 of file route_group.h.

bool ARDOUR::RouteGroup::is_mute ( ) const
inline

Definition at line 70 of file route_group.h.

bool ARDOUR::RouteGroup::is_recenable ( ) const
inline

Definition at line 72 of file route_group.h.

bool ARDOUR::RouteGroup::is_relative ( ) const
inline

Definition at line 67 of file route_group.h.

bool ARDOUR::RouteGroup::is_route_active ( ) const
inline

Definition at line 74 of file route_group.h.

bool ARDOUR::RouteGroup::is_select ( ) const
inline

Definition at line 73 of file route_group.h.

bool ARDOUR::RouteGroup::is_solo ( ) const
inline

Definition at line 71 of file route_group.h.

void RouteGroup::make_property_quarks ( )
static

Definition at line 56 of file route_group.cc.

void RouteGroup::make_subgroup ( bool  aux,
Placement  placement 
)

Definition at line 450 of file route_group.cc.

int RouteGroup::remove ( boost::shared_ptr< Route r)

Definition at line 161 of file route_group.cc.

void RouteGroup::remove_when_going_away ( boost::weak_ptr< Route wr)
private

Definition at line 151 of file route_group.cc.

boost::shared_ptr<RouteList> ARDOUR::RouteGroup::route_list ( )
inline

Definition at line 126 of file route_group.h.

void RouteGroup::set_active ( bool  yn,
void *  src 
)

Definition at line 392 of file route_group.cc.

void RouteGroup::set_color ( bool  yn)

Definition at line 359 of file route_group.cc.

void RouteGroup::set_gain ( bool  yn)

Definition at line 299 of file route_group.cc.

void RouteGroup::set_hidden ( bool  yn,
void *  src 
)

Definition at line 415 of file route_group.cc.

void RouteGroup::set_monitoring ( bool  yn)

Definition at line 379 of file route_group.cc.

void RouteGroup::set_mute ( bool  yn)

Definition at line 309 of file route_group.cc.

void RouteGroup::set_recenable ( bool  yn)

Definition at line 329 of file route_group.cc.

void RouteGroup::set_relative ( bool  yn,
void *  src 
)

Definition at line 404 of file route_group.cc.

void RouteGroup::set_route_active ( bool  yn)

Definition at line 349 of file route_group.cc.

void RouteGroup::set_select ( bool  yn)

Definition at line 339 of file route_group.cc.

void RouteGroup::set_solo ( bool  yn)

Definition at line 319 of file route_group.cc.

int RouteGroup::set_state ( const XMLNode node,
int  version 
)
virtual

Implements PBD::Stateful.

Definition at line 245 of file route_group.cc.

int RouteGroup::set_state_2X ( const XMLNode node,
int   
)
private

Definition at line 275 of file route_group.cc.

size_t ARDOUR::RouteGroup::size ( ) const
inline

Definition at line 79 of file route_group.h.

Member Data Documentation

PBD::Property<bool> ARDOUR::RouteGroup::_active
private

Definition at line 142 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_color
private

Definition at line 150 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_gain
private

Definition at line 144 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_hidden
private

Definition at line 143 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_monitoring
private

Definition at line 151 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_mute
private

Definition at line 145 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_recenable
private

Definition at line 147 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_relative
private

Definition at line 141 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_route_active
private

Definition at line 149 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_select
private

Definition at line 148 of file route_group.h.

PBD::Property<bool> ARDOUR::RouteGroup::_solo
private

Definition at line 146 of file route_group.h.

PBD::Signal2<void, RouteGroup *, boost::weak_ptr<ARDOUR::Route> > ARDOUR::RouteGroup::RouteAdded

Emitted when a route has been added to this group

Definition at line 129 of file route_group.h.

PBD::Signal2<void, RouteGroup *, boost::weak_ptr<ARDOUR::Route> > ARDOUR::RouteGroup::RouteRemoved

Emitted when a route has been removed from this group

Definition at line 131 of file route_group.h.

boost::shared_ptr<RouteList> ARDOUR::RouteGroup::routes
private

Definition at line 138 of file route_group.h.

boost::shared_ptr<Route> ARDOUR::RouteGroup::subgroup_bus
private

Definition at line 139 of file route_group.h.


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