1#[cfg(feature = "signal")]
6pub mod signal {
7 pub use sim_lib_numbers_signal::{
8 Direction, LengthPolicy, Normalization, PaddingPolicy, PlacementPolicy, SignConvention,
9 SignalBuffer, SignalError, SignalNumbersLib, SignalView, SpectrumPacking, Stride,
10 TransformKind, TransformPlan, TransformPrecision, TransformReport, TransformResources,
11 call_signal_transform, reference_dft, signal_transform_symbol, transform,
12 transform_in_place,
13 };
14}
15
16#[cfg(any(feature = "discrete-search", feature = "music-algorithms"))]
19pub mod discrete_search {
20 pub use sim_lib_discrete_search::{
21 NeverInterrupt, SearchControl, SearchError, SearchInterrupt, SearchOrder, SearchProblem,
22 SearchReceipt, SearchRun, SearchStatus, SearchStep, WorkCosts, solve,
23 };
24}
25
26#[cfg(any(feature = "pitch-ratio", feature = "music-algorithms"))]
32pub mod pitch_ratio {
33 pub use sim_lib_pitch_ratio::{
34 ApproximationStrategy, FactorVector, PitchRatio, PitchRatioError, RatioApproximation,
35 RatioChordReport, RatioCoverage, RatioPolicy, RatioRelation, RatioRelationPath,
36 analyze_ratio_chord, analyze_ratio_chord_with_root, approximate_ratio,
37 approximate_ratio_with_strategy, expand_ratio_relation_tree, rank_ratio, ratio_coverage,
38 ratio_interval_matrix, root_normalized_tones, unrank_ratio,
39 };
40}
41
42#[cfg(any(feature = "music-consonance", feature = "music-inference"))]
44pub mod music_consonance {
45 pub use sim_lib_music_consonance::{
46 Addition, AdditionKind, ChordAddition, CompletionConstraints, CompletionError,
47 CompletionProvenance, CompletionRequest, CompletionResult, ConsonanceError,
48 ConsonancePatch, ConsonancePolicy, ConsonanceReport, ConstraintError, DoublingAddition,
49 MetricBounds, MetricFamily, MetricReport, MetricThreshold, MusicConsonanceLib,
50 NoteAddition, OrnamentAddition, PatchError, PedalAddition, PitchRangeConstraint,
51 PreservationConstraints, Provenance, ProvenanceKind, SoundingNote, SoundingWindow,
52 StyleConstraints, TimeSpan, VoiceAddition, WindowSonance, apply_patch, complete_staff,
53 evaluate, evaluate_midi_timeline, evaluate_staff, install_music_consonance_lib,
54 music_consonance_evaluate_symbol, remove_patch, slice_sounding_windows, sounding_windows,
55 staff_content_key,
56 };
57}
58
59#[cfg(any(feature = "music-counterpoint", feature = "music-inference"))]
65pub mod music_counterpoint {
66 pub use sim_lib_music_counterpoint::{
67 AlignmentWindow, AnalysisProvenance, CadencePolicy, ContrapuntalForm,
68 CounterpointGeneration, CounterpointGenerationPolicy, CounterpointGenerationReceipt,
69 CounterpointGenerationResult, CounterpointReport, DissonanceContext, DissonanceRules,
70 DiversityPolicy, DurationRules, GenerationError, IntervalRules, MetricEvidence, Motion,
71 MotionDirection, MotionRules, MusicCounterpointLib, NoteEvidence, OverlapEvidence,
72 PitchRange, RuleError, RuleSet, Species, StrettoChain, StrettoCluster,
73 StrettoCompatibility, StrettoCouple, StrettoEntry, StrettoError, StrettoFusion,
74 StrettoGraph, StrettoPolicy, StrettoRejection, StrettoTransform, TimeSpan, Violation,
75 VoiceEvidence, VoiceRules, analyze_counterpoint, cluster_overlap, fuse_stretto_entries,
76 generate_counterpoint, install_music_counterpoint_lib, materialize_transform,
77 music_counterpoint_analyze_symbol, music_counterpoint_generate_symbol,
78 music_stretto_graph_symbol, stretto_graph,
79 };
80}