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

#include <session_metadata.h>

Inheritance diagram for ARDOUR::SessionMetadata:
PBD::StatefulDestructible PBD::Stateful PBD::Destructible

Public Member Functions

 SessionMetadata ()
 
 ~SessionMetadata ()
 
std::string comment () const
 
std::string copyright () const
 
std::string isrc () const
 
uint32_t year () const
 
std::string grouping () const
 
std::string barcode () const
 
std::string title () const
 
std::string subtitle () const
 
std::string artist () const
 
std::string album_artist () const
 
std::string lyricist () const
 
std::string composer () const
 
std::string conductor () const
 
std::string remixer () const
 
std::string arranger () const
 
std::string engineer () const
 
std::string producer () const
 
std::string dj_mixer () const
 
std::string mixer () const
 
std::string album () const
 
std::string compilation () const
 
std::string disc_subtitle () const
 
uint32_t disc_number () const
 
uint32_t total_discs () const
 
uint32_t track_number () const
 
uint32_t total_tracks () const
 
std::string genre () const
 
std::string instructor () const
 
std::string course () const
 
std::string user_name () const
 
std::string user_email () const
 
std::string user_web () const
 
std::string organization () const
 
std::string country () const
 
void set_comment (const std::string &)
 
void set_copyright (const std::string &)
 
void set_isrc (const std::string &)
 
void set_year (uint32_t)
 
void set_grouping (const std::string &)
 
void set_barcode (const std::string &)
 
void set_title (const std::string &)
 
void set_subtitle (const std::string &)
 
void set_artist (const std::string &)
 
void set_album_artist (const std::string &)
 
void set_lyricist (const std::string &)
 
void set_composer (const std::string &)
 
void set_conductor (const std::string &)
 
void set_remixer (const std::string &)
 
void set_arranger (const std::string &)
 
void set_engineer (const std::string &)
 
void set_producer (const std::string &)
 
void set_dj_mixer (const std::string &)
 
void set_mixer (const std::string &)
 
void set_album (const std::string &)
 
void set_compilation (const std::string &)
 
void set_disc_subtitle (const std::string &)
 
void set_disc_number (uint32_t)
 
void set_total_discs (uint32_t)
 
void set_track_number (uint32_t)
 
void set_total_tracks (uint32_t)
 
void set_genre (const std::string &)
 
void set_instructor (const std::string &)
 
void set_course (const std::string &)
 
void set_user_name (const std::string &)
 
void set_user_email (const std::string &)
 
void set_user_web (const std::string &)
 
void set_organization (const std::string &)
 
void set_country (const std::string &)
 
XMLNodeget_state ()
 
XMLNodeget_user_state ()
 
int set_state (const XMLNode &, int version_num)
 
- 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 SessionMetadataMetadata ()
 

Private Types

typedef std::pair< std::string,
std::string > 
Property
 
typedef std::map< std::string,
std::string > 
PropertyMap
 

Private Member Functions

XMLNodeget_xml (const std::string &name)
 
std::string get_value (const std::string &name) const
 
uint32_t get_uint_value (const std::string &name) const
 
void set_value (const std::string &name, const std::string &value)
 
void set_value (const std::string &name, uint32_t value)
 

Private Attributes

PropertyMap map
 
PropertyMap user_map
 

Static Private Attributes

static SessionMetadata_metadata = NULL
 

Additional Inherited Members

- 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
 
- Static Public Attributes inherited from PBD::Stateful
static int current_state_version = 0
 
static int loading_state_version = 0
 
- 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 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

Represents metadata associated to a Session Metadata can be accessed and edited via this class. Exported files can also be tagged with this data.

Definition at line 39 of file session_metadata.h.

Member Typedef Documentation

typedef std::pair<std::string, std::string> ARDOUR::SessionMetadata::Property
private

Definition at line 141 of file session_metadata.h.

typedef std::map<std::string, std::string> ARDOUR::SessionMetadata::PropertyMap
private

Definition at line 142 of file session_metadata.h.

Constructor & Destructor Documentation

SessionMetadata::SessionMetadata ( )

Definition at line 31 of file session_metadata.cc.

SessionMetadata::~SessionMetadata ( )

Definition at line 98 of file session_metadata.cc.

Member Function Documentation

string SessionMetadata::album ( ) const

Definition at line 340 of file session_metadata.cc.

string SessionMetadata::album_artist ( ) const

Definition at line 280 of file session_metadata.cc.

string SessionMetadata::arranger ( ) const

Definition at line 310 of file session_metadata.cc.

string SessionMetadata::artist ( ) const

Definition at line 274 of file session_metadata.cc.

string SessionMetadata::barcode ( ) const

Definition at line 256 of file session_metadata.cc.

string SessionMetadata::comment ( ) const

Definition at line 226 of file session_metadata.cc.

string SessionMetadata::compilation ( ) const

Definition at line 346 of file session_metadata.cc.

string SessionMetadata::composer ( ) const

Definition at line 292 of file session_metadata.cc.

string SessionMetadata::conductor ( ) const

Definition at line 298 of file session_metadata.cc.

string SessionMetadata::copyright ( ) const

Definition at line 232 of file session_metadata.cc.

string SessionMetadata::country ( ) const

Definition at line 425 of file session_metadata.cc.

string SessionMetadata::course ( ) const

Definition at line 394 of file session_metadata.cc.

uint32_t SessionMetadata::disc_number ( ) const

Definition at line 358 of file session_metadata.cc.

string SessionMetadata::disc_subtitle ( ) const

Definition at line 352 of file session_metadata.cc.

string SessionMetadata::dj_mixer ( ) const

Definition at line 328 of file session_metadata.cc.

string SessionMetadata::engineer ( ) const

Definition at line 316 of file session_metadata.cc.

string SessionMetadata::genre ( ) const

Definition at line 382 of file session_metadata.cc.

XMLNode & SessionMetadata::get_state ( void  )
virtual

Implements PBD::Stateful.

Definition at line 170 of file session_metadata.cc.

uint32_t SessionMetadata::get_uint_value ( const std::string &  name) const
private

Definition at line 135 of file session_metadata.cc.

XMLNode & SessionMetadata::get_user_state ( )

Definition at line 210 of file session_metadata.cc.

string SessionMetadata::get_value ( const std::string &  name) const
private

Definition at line 119 of file session_metadata.cc.

XMLNode * SessionMetadata::get_xml ( const std::string &  name)
private

Definition at line 104 of file session_metadata.cc.

string SessionMetadata::grouping ( ) const

Definition at line 250 of file session_metadata.cc.

string SessionMetadata::instructor ( ) const

Definition at line 388 of file session_metadata.cc.

string SessionMetadata::isrc ( ) const

Definition at line 238 of file session_metadata.cc.

string SessionMetadata::lyricist ( ) const

Definition at line 286 of file session_metadata.cc.

static SessionMetadata* ARDOUR::SessionMetadata::Metadata ( )
inlinestatic

Definition at line 43 of file session_metadata.h.

string SessionMetadata::mixer ( ) const

Definition at line 334 of file session_metadata.cc.

string SessionMetadata::organization ( ) const

Definition at line 419 of file session_metadata.cc.

string SessionMetadata::producer ( ) const

Definition at line 322 of file session_metadata.cc.

string SessionMetadata::remixer ( ) const

Definition at line 304 of file session_metadata.cc.

void SessionMetadata::set_album ( const std::string &  )

Definition at line 548 of file session_metadata.cc.

void SessionMetadata::set_album_artist ( const std::string &  )

Definition at line 488 of file session_metadata.cc.

void SessionMetadata::set_arranger ( const std::string &  )

Definition at line 518 of file session_metadata.cc.

void SessionMetadata::set_artist ( const std::string &  )

Definition at line 482 of file session_metadata.cc.

void SessionMetadata::set_barcode ( const std::string &  )

Definition at line 464 of file session_metadata.cc.

void SessionMetadata::set_comment ( const std::string &  )

Definition at line 434 of file session_metadata.cc.

void SessionMetadata::set_compilation ( const std::string &  )

Definition at line 554 of file session_metadata.cc.

void SessionMetadata::set_composer ( const std::string &  )

Definition at line 500 of file session_metadata.cc.

void SessionMetadata::set_conductor ( const std::string &  )

Definition at line 506 of file session_metadata.cc.

void SessionMetadata::set_copyright ( const std::string &  )

Definition at line 440 of file session_metadata.cc.

void SessionMetadata::set_country ( const std::string &  )

Definition at line 631 of file session_metadata.cc.

void SessionMetadata::set_course ( const std::string &  )

Definition at line 602 of file session_metadata.cc.

void SessionMetadata::set_disc_number ( uint32_t  v)

Definition at line 566 of file session_metadata.cc.

void SessionMetadata::set_disc_subtitle ( const std::string &  )

Definition at line 560 of file session_metadata.cc.

void SessionMetadata::set_dj_mixer ( const std::string &  )

Definition at line 536 of file session_metadata.cc.

void SessionMetadata::set_engineer ( const std::string &  )

Definition at line 524 of file session_metadata.cc.

void SessionMetadata::set_genre ( const std::string &  )

Definition at line 590 of file session_metadata.cc.

void SessionMetadata::set_grouping ( const std::string &  )

Definition at line 458 of file session_metadata.cc.

void SessionMetadata::set_instructor ( const std::string &  )

Definition at line 596 of file session_metadata.cc.

void SessionMetadata::set_isrc ( const std::string &  )

Definition at line 446 of file session_metadata.cc.

void SessionMetadata::set_lyricist ( const std::string &  )

Definition at line 494 of file session_metadata.cc.

void SessionMetadata::set_mixer ( const std::string &  )

Definition at line 542 of file session_metadata.cc.

void SessionMetadata::set_organization ( const std::string &  )

Definition at line 626 of file session_metadata.cc.

void SessionMetadata::set_producer ( const std::string &  )

Definition at line 530 of file session_metadata.cc.

void SessionMetadata::set_remixer ( const std::string &  )

Definition at line 512 of file session_metadata.cc.

int SessionMetadata::set_state ( const XMLNode state,
int  version_num 
)
virtual

Implements PBD::Stateful.

Definition at line 185 of file session_metadata.cc.

void SessionMetadata::set_subtitle ( const std::string &  )

Definition at line 476 of file session_metadata.cc.

void SessionMetadata::set_title ( const std::string &  )

Definition at line 470 of file session_metadata.cc.

void SessionMetadata::set_total_discs ( uint32_t  v)

Definition at line 572 of file session_metadata.cc.

void SessionMetadata::set_total_tracks ( uint32_t  v)

Definition at line 584 of file session_metadata.cc.

void SessionMetadata::set_track_number ( uint32_t  v)

Definition at line 578 of file session_metadata.cc.

void SessionMetadata::set_user_email ( const std::string &  )

Definition at line 614 of file session_metadata.cc.

void SessionMetadata::set_user_name ( const std::string &  )

Definition at line 608 of file session_metadata.cc.

void SessionMetadata::set_user_web ( const std::string &  )

Definition at line 620 of file session_metadata.cc.

void ARDOUR::SessionMetadata::set_value ( const std::string &  name,
const std::string &  value 
)
private
void ARDOUR::SessionMetadata::set_value ( const std::string &  name,
uint32_t  value 
)
private
void SessionMetadata::set_year ( uint32_t  v)

Definition at line 452 of file session_metadata.cc.

string SessionMetadata::subtitle ( ) const

Definition at line 268 of file session_metadata.cc.

string SessionMetadata::title ( ) const

Definition at line 262 of file session_metadata.cc.

uint32_t SessionMetadata::total_discs ( ) const

Definition at line 364 of file session_metadata.cc.

uint32_t SessionMetadata::total_tracks ( ) const

Definition at line 376 of file session_metadata.cc.

uint32_t SessionMetadata::track_number ( ) const

Definition at line 370 of file session_metadata.cc.

string SessionMetadata::user_email ( ) const

Definition at line 407 of file session_metadata.cc.

string SessionMetadata::user_name ( ) const

Definition at line 401 of file session_metadata.cc.

string SessionMetadata::user_web ( ) const

Definition at line 413 of file session_metadata.cc.

uint32_t SessionMetadata::year ( ) const

Definition at line 244 of file session_metadata.cc.

Member Data Documentation

SessionMetadata * SessionMetadata::_metadata = NULL
staticprivate

Definition at line 139 of file session_metadata.h.

PropertyMap ARDOUR::SessionMetadata::map
private

Definition at line 143 of file session_metadata.h.

PropertyMap ARDOUR::SessionMetadata::user_map
private

Definition at line 144 of file session_metadata.h.


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