ardour
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ItemCounts Class Reference

#include <item_counts.h>

Public Member Functions

 ItemCounts ()
 
size_t n_playlists (ARDOUR::DataType t) const
 
size_t n_regions (ARDOUR::DataType t) const
 
size_t n_lines (Evoral::Parameter t) const
 
size_t n_notes () const
 
void increase_n_playlists (ARDOUR::DataType t, size_t delta=1)
 
void increase_n_regions (ARDOUR::DataType t, size_t delta=1)
 
void increase_n_lines (Evoral::Parameter t, size_t delta=1)
 
void increase_n_notes (size_t delta=1)
 

Private Member Functions

template<typename Key >
size_t get_n (const Key &key, const typename std::map< Key, size_t > &counts) const
 
template<typename Key >
void increase_n (const Key &key, typename std::map< Key, size_t > &counts, size_t delta)
 

Private Attributes

std::map< ARDOUR::DataType,
size_t > 
_playlists
 
std::map< ARDOUR::DataType,
size_t > 
_regions
 
std::map< Evoral::Parameter,
size_t > 
_lines
 
size_t _notes
 

Detailed Description

A count of various GUI items.

This is used to keep track of 'consumption' of a selection when pasting, but may be useful elsewhere.

Definition at line 35 of file item_counts.h.

Constructor & Destructor Documentation

ItemCounts::ItemCounts ( )
inline

Definition at line 38 of file item_counts.h.

Member Function Documentation

template<typename Key >
size_t ItemCounts::get_n ( const Key &  key,
const typename std::map< Key, size_t > &  counts 
) const
inlineprivate

Definition at line 62 of file item_counts.h.

template<typename Key >
void ItemCounts::increase_n ( const Key &  key,
typename std::map< Key, size_t > &  counts,
size_t  delta 
)
inlineprivate

Definition at line 69 of file item_counts.h.

void ItemCounts::increase_n_lines ( Evoral::Parameter  t,
size_t  delta = 1 
)
inline

Definition at line 53 of file item_counts.h.

void ItemCounts::increase_n_notes ( size_t  delta = 1)
inline

Definition at line 57 of file item_counts.h.

void ItemCounts::increase_n_playlists ( ARDOUR::DataType  t,
size_t  delta = 1 
)
inline

Definition at line 45 of file item_counts.h.

void ItemCounts::increase_n_regions ( ARDOUR::DataType  t,
size_t  delta = 1 
)
inline

Definition at line 49 of file item_counts.h.

size_t ItemCounts::n_lines ( Evoral::Parameter  t) const
inline

Definition at line 42 of file item_counts.h.

size_t ItemCounts::n_notes ( ) const
inline

Definition at line 43 of file item_counts.h.

size_t ItemCounts::n_playlists ( ARDOUR::DataType  t) const
inline

Definition at line 40 of file item_counts.h.

size_t ItemCounts::n_regions ( ARDOUR::DataType  t) const
inline

Definition at line 41 of file item_counts.h.

Member Data Documentation

std::map<Evoral::Parameter, size_t> ItemCounts::_lines
private

Definition at line 80 of file item_counts.h.

size_t ItemCounts::_notes
private

Definition at line 81 of file item_counts.h.

std::map<ARDOUR::DataType, size_t> ItemCounts::_playlists
private

Definition at line 78 of file item_counts.h.

std::map<ARDOUR::DataType, size_t> ItemCounts::_regions
private

Definition at line 79 of file item_counts.h.


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