MayaFlux 0.3.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
SortingHelper.hpp File Reference
+ Include dependency graph for SortingHelper.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  MayaFlux::Yantra::SortKey
 Multi-dimensional sort key specification for complex sorting. More...
 

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Yantra
 

Typedefs

using MayaFlux::Yantra::SortingDirection = Kinesis::Discrete::SortingDirection
 
using MayaFlux::Yantra::SortingAlgorithm = Kinesis::Discrete::SortingAlgorithm
 

Functions

template<ComputeData T>
void MayaFlux::Yantra::sort_compute_data_inplace (Datum< T > &data, SortingDirection direction, SortingAlgorithm algorithm)
 Universal sort function - handles extraction/conversion internally.
 
template<ComputeData T>
MayaFlux::Yantra::sort_compute_data_extract (const T &data, SortingDirection direction, SortingAlgorithm algorithm)
 Universal sort function - returns sorted copy.
 
template<typename T >
MayaFlux::Yantra::sort_compute_data_extract (const Datum< T > &data, SortingDirection direction, SortingAlgorithm algorithm)
 Universal sort function - returns sorted copy.
 
template<ComputeData T>
MayaFlux::Yantra::sort_compute_data (const T &data, SortingDirection direction=SortingDirection::ASCENDING)
 Convenience function with default algorithm.
 
template<ComputeData T>
std::vector< std::vector< size_t > > MayaFlux::Yantra::generate_compute_data_indices (const Datum< T > &data, SortingDirection direction)
 Generate sort indices for any ComputeData type.
 
template<typename T >
auto MayaFlux::Yantra::create_multi_key_comparator (const std::vector< SortKey > &keys)
 Creates a multi-key comparator for complex sorting.
 
template<typename T >
double MayaFlux::Yantra::get_temporal_position (const T &item)
 Helper function to get temporal position from various types Used by TemporalSortable concept.
 
template<typename T >
SortKey MayaFlux::Yantra::create_universal_sort_key (const std::string &name, SortingDirection direction=SortingDirection::ASCENDING)
 Create universal sort key extractor for common data types.