ardour
Public Member Functions | Private Attributes | List of all members
Evoral::Parameter Class Reference

#include <Parameter.hpp>

Public Member Functions

 Parameter (uint32_t type, uint8_t channel=0, uint32_t id=0)
 
uint32_t type () const
 
uint8_t channel () const
 
uint32_t id () const
 
bool operator== (const Parameter &id) const
 
bool operator!= (const Parameter &id) const
 
bool operator< (const Parameter &other) const
 
 operator bool () const
 

Private Attributes

uint32_t _type
 
uint32_t _id
 
uint8_t _channel
 

Detailed Description

ID of a [play|record|automate]able parameter.

A parameter is defined by (type, id, channel). Type is an integer which can be used in any way by the application (e.g. cast to a custom enum, map to/from a URI, etc). ID is type specific (e.g. MIDI controller #).

This class defines a < operator which is a strict weak ordering, so Parameter may be stored in a std::set, used as a std::map key, etc.

Definition at line 40 of file Parameter.hpp.

Constructor & Destructor Documentation

Evoral::Parameter::Parameter ( uint32_t  type,
uint8_t  channel = 0,
uint32_t  id = 0 
)
inline

Definition at line 43 of file Parameter.hpp.

Member Function Documentation

uint8_t Evoral::Parameter::channel ( ) const
inline

Definition at line 48 of file Parameter.hpp.

uint32_t Evoral::Parameter::id ( ) const
inline

Definition at line 49 of file Parameter.hpp.

Evoral::Parameter::operator bool ( ) const
inline

Definition at line 80 of file Parameter.hpp.

bool Evoral::Parameter::operator!= ( const Parameter id) const
inline

Definition at line 60 of file Parameter.hpp.

bool Evoral::Parameter::operator< ( const Parameter other) const
inline

Strict weak ordering See: http://www.sgi.com/tech/stl/StrictWeakOrdering.html Sort Parameters first according to type then to channel and lastly to ID.

Definition at line 68 of file Parameter.hpp.

bool Evoral::Parameter::operator== ( const Parameter id) const
inline

Equivalence operator It is obvious from the definition that this operator is transitive, as required by stict weak ordering (see: http://www.sgi.com/tech/stl/StrictWeakOrdering.html)

Definition at line 56 of file Parameter.hpp.

uint32_t Evoral::Parameter::type ( ) const
inline

Definition at line 47 of file Parameter.hpp.

Member Data Documentation

uint8_t Evoral::Parameter::_channel
private

Definition at line 85 of file Parameter.hpp.

uint32_t Evoral::Parameter::_id
private

Definition at line 84 of file Parameter.hpp.

uint32_t Evoral::Parameter::_type
private

Definition at line 83 of file Parameter.hpp.


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