testDataGenQuad

class testDataGenQuad : public kotekan::Stage

Producer which feeds fake data into 4 Buffers and simultaneously releases them. The input buffers are fully seeded prior to beginning, then released at timed intervals. Useful for testing CHIME things when we want operations synchronized between GPUs.

Bug:

Doesn’t actually support random data, always generates constant.

Todo:

Make the frame-to-frame sleep depend on the size of buffers.

Buffers

  • out_buf0 A kotekan buffer which will be fed, can be any size.

    • Format: Array of shorts

    • Metadata: none

  • out_buf0 A kotekan buffer which will be fed, can be any size.

    • Format: Array of shorts

    • Metadata: none

  • out_buf0 A kotekan buffer which will be fed, can be any size.

    • Format: Array of shorts

    • Metadata: none

  • out_buf0 A kotekan buffer which will be fed, can be any size.

    • Format: Array of shorts

    • Metadata: none

Author

Keith Vanderlinde

Param type:

String. Must be one of "random" oe "const"

Param value:

Int Array. Values to seed if using constant data genration. These are seeded into sequential frames, and looped through until all frames in the target buffers are filled.

Public Functions

testDataGenQuad(kotekan::Config &config, const std::string &unique_name, kotekan::bufferContainer &buffer_container)

Constructor, also initializes internal variables from config.

~testDataGenQuad()

Destructor, cleans up local allocs.

virtual void main_thread() override

Primary loop to wait for buffers, stuff in data, mark full, lather, rinse and repeat.