The following are essential “private” notes to sort out the call sequence used as data flows through DataStream processes and Core processes.
DataStream::executeDataStream::initialiseMemoryBufferDataStream::launchNewFileReadThread or DataStream::launchNewNetworkReadThreadDataStream::loopfileread or DataStream::loopnetworkreadloopfileread loops overDataStream::openfileinitialiseFile (Overloaded in mk5.cpp)DataStream::diskToMemory read (System call)testForSync (Overloaded in mk5.cpp)Core::CoreCore::executepthread_create calling launchNewProcessThreadloopprocessprocessdataMode::process for each batch of FFTsCore::receivedataMPI_Irecv and locks/unlocks mutexes