37 const uint TABLE_SIZ = 100000;
38 const uint CHUNK_MAX = 8000;
39 const uint WIDTH_MAX = 3;
48 E
const& operator[] (
size_t)
const {
return decoy; }
49 size_t size()
const {
return CHUNK_MAX;}
51 DummyArray<ChannelDescriptor> dummy1;
52 DummyArray<InChanDescriptor> dummy2;
57 struct MockSizeRequest
68 virtual uint getNrI()
const {
return ii; }
69 virtual uint getNrO()
const {
return oo; }
87 first_behind (
BuffTable const& thisChunk,
const uint nrI)
89 return &thisChunk.inHandle[nrI];
94 not_within(
void* candidate,
void* lower,
void* upper)
96 return (candidate < lower) || (upper <= candidate);
103 return (b.outHandle == lastLevel )
104 && (b.outBuff <= b.inBuff )
105 && (b.outHandle <= b.inHandle)
106 && (b.inBuff == &b.outBuff [num.nrO])
107 && (b.inHandle == &b.outHandle[num.nrO])
108 && (not_within(b.outBuff, b.outHandle, &b.inHandle[num.nrO]))
109 && (not_within(b.inBuff, b.outHandle, &b.inHandle[num.nrO]))
110 && (not_within(b.outHandle, b.outBuff, &b.inBuff[num.nrO]))
111 && (not_within(b.inHandle, b.outBuff, &b.inBuff[num.nrO]))
115 } // (End) internal defs 129 using PSto = std::unique_ptr<BuffTableStorage>; 142 // allocate storage block to be used chunk wise 145 invocation (0, detect_start_level(*pStorage));
149 cout <<
"BuffTable chunks allocated: "<<counter<<
"\n";
160 MockSizeRequest numbers; 161 consumed += numbers.getNrI()+numbers.getNrO();
162 if (TABLE_SIZ <= consumed)
167 CHECK (consistencyCheck (thisChunk, numbers, lastLevel));
169 uint nrBranches ( 1 +
rani(WIDTH_MAX));
171 invocation (consumed, first_behind (thisChunk,numbers.getNrI()));
void invocation(uint consumed, void *lastLevel)
recurse down randomly until exhausting storage
Abstraction: Array of const references.
Obsolete, to be rewritten /////TICKET #826 to be allocated on the stack while evaluating a ProcNode::...
Obsolete, to be rewritten /////TICKET #826.
int rani(uint bound=_iBOUND())
Steam-Layer implementation namespace root.
Abstract Base Class for all testcases.
Abstraction to access the state of a currently ongoing render/calculation process, as it is tied to the supporting facilities of the vault layer.
Simplistic test class runner.
Interface to the processing nodes and the render nodes network.
Lumiera error handling (C++ interface).
Handle for a buffer for processing data, abstracting away the actual implementation.
Interface: Description of the input and output ports, processing function and predecessor nodes for a...
Identification tuple for denoting render nodes unambiguously.
Tables of buffer handles and corresponding dereferenced buffer pointers.
Interface and Base definition for all Lumiera Exceptions.