19 #ifndef STEAM_ENGINE_TEST_RAND_ONTOLOGY_H 20 #define STEAM_ENGINE_TEST_RAND_ONTOLOGY_H 43 void generateFrame (TestFrame* buff,
size_t frameNr =0, uint flavour =0);
46 void generateMultichan (TestFrame* buffArry, uint chanCnt,
size_t frameNr =0, uint flavour =0);
55 void manipulateFrame (TestFrame* out, TestFrame
const* in, uint64_t param);
58 void combineFrames (TestFrame* out, TestFrame
const* srcA, TestFrame
const* srcB,
double mix);
63 using NoArg = std::array<char*, 0>;
64 using SoloArg = std::array<char*, 1>;
66 extern const string DUMMY_FUN_ID;
73 UNIMPLEMENTED (
"a sincerely nonsensical operation");
94 Spec setupGenerator (
string qual =
"");
107 : PROTO{
_Fmt{
"%s-%s"} % kind % type}
112 TestRandOntology::setupGenerator (
string qual)
114 Spec spec{
"generate",
"TestFrame"};
void manipulateMultichan(TestFrame *buffArry, uint chanCnt, uint64_t param)
»process« a planar multi channel array of data frames in-place.
void generateMultichan(TestFrame *buffArry, uint chanCnt, size_t frameNr, uint flavour)
produce planar multi channel output of random data frames
inline string literal This is a marker type to indicate that
void generateFrame(TestFrame *buff, size_t frameNr, uint flavour)
produce sequences of frames with (reproducible) random data
Steam-Layer implementation namespace root.
A front-end for using printf-style formatting.
void duplicateMultichan(TestFrame *outArry, TestFrame *inArry, uint chanCnt)
create an identical clone copy of the planar multi channel frame array
Access point to singletons and other kinds of dependencies designated by type.
void manipulateFrame(TestFrame *out, TestFrame const *in, uint64_t param)
»process« random frame date by hash-chaining with a parameter.
Mix-Ins to allow or prohibit various degrees of copying and cloning.
A fake Domain Ontology to describe mocked »render operations« on dummy data frames filled with random...
Marker types to indicate a literal string and a Symbol.
Singleton services and Dependency Injection.
Types marked with this mix-in may be duplicated by copy-construction, yet may not be moved or transfe...
Lumiera error handling (C++ interface).
void dummyOp(NoArg in, SoloArg out)
void combineFrames(TestFrame *out, TestFrame const *srcA, TestFrame const *srcB, double mix)
mix two random data frames by a parameter-controlled proportion
Unit test helper to generate fake test data frames.
lib::Depend< TestRandOntology > testRand
Storage for the Singleton-Accessor/Factory.