XJ music engine  1.9.6
In-game runtime engine for XJ music.
TransitionCraft.h
Go to the documentation of this file.
1 // Copyright (c) XJ Music Inc. (https://xjmusic.com) All Rights Reserved.
2 
3 #ifndef XJMUSIC_CRAFT_TRANSITION_CRAFT_H
4 #define XJMUSIC_CRAFT_TRANSITION_CRAFT_H
5 
6 #include <set>
7 
8 #include "xjmusic/craft/Craft.h"
10 
11 namespace XJ {
12 
16  class TransitionCraft : protected Craft {
17  std::set<std::string> smallNames;
18  std::set<std::string> mediumNames;
19  std::set<std::string> largeNames;
20 
21  public:
23 
27  void doWork() const;
28 
34  bool isBigTransitionSegment() const;
35 
43  bool isMediumTransitionSegment() const;
44 
51  void craftTransition(double tempo, const Instrument *instrument) const;
52 
58  std::set<const InstrumentAudio *>
59  selectAudiosForInstrument(const Instrument *instrument, std::set<std::string> names) const;
60 
61  };
62 
63 }// namespace XJ
64 
65 #endif//XJMUSIC_CRAFT_TRANSITION_CRAFT_H
Definition: Craft.h:25
Fabricator * fabricator
Definition: FabricationWrapper.h:16
Definition: Fabricator.h:48
Definition: Instrument.h:14
Definition: TransitionCraft.h:16
bool isMediumTransitionSegment() const
Definition: TransitionCraft.cpp:43
std::set< const InstrumentAudio * > selectAudiosForInstrument(const Instrument *instrument, std::set< std::string > names) const
Definition: TransitionCraft.cpp:97
void craftTransition(double tempo, const Instrument *instrument) const
Definition: TransitionCraft.cpp:54
void doWork() const
Definition: TransitionCraft.cpp:17
bool isBigTransitionSegment() const
Definition: TransitionCraft.cpp:32
TransitionCraft(Fabricator *fabricator)
Definition: TransitionCraft.cpp:8
Definition: ActiveAudio.h:11