CereRingBuffer.h 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef CERERINGBUFFER_H_18A7F155
  2. #define CERERINGBUFFER_H_18A7F155
  3. /** \file CereRingBuffer.h
  4. \brief Template specializations for ring buffers in use with CereConn,
  5. tuned for Blackrock NSPs
  6. **/
  7. #include <array>
  8. #include <cstdint>
  9. #include <utility>
  10. #include <vector>
  11. #include "CereConnBaseTypes.h"
  12. #include "CereConstants.h"
  13. #include "rb/RingBuffer.h"
  14. #include "rb/SampleGroupRingBuffer.h"
  15. #include "rb/SampleGroupList.h"
  16. #include "rb/CommentRingBuffer.h"
  17. #include "rb/SpikeRingBuffer.h"
  18. #include "rb/DigInEvRingBuffer.h"
  19. namespace cc
  20. {
  21. // template<typename TData, typename TTimestamp, size_t MaxChannels, size_t Size>
  22. using SampleGroupRingBuffer = SampleGroupRingBufferT<Datum_t, Timestamp_t, constants::MaxAnalogChannels, constants::ContSamples>;
  23. using SampleGroupRingBufferCollection = SampleGroupRingBufferCollectionT<Datum_t, Timestamp_t, constants::MaxAnalogChannels, constants::ContSamples, constants::NSampleGroups>;
  24. using SampleGroupChunk = SampleGroupChunkT<Datum_t, Timestamp_t, constants::MaxAnalogChannels, constants::ContSamples>;
  25. using SampleGroupList = SampleGroupListT<Datum_t, Timestamp_t, constants::MaxAnalogChannels, constants::ContSamples, constants::NSampleGroups>;
  26. using Comment = CommentT<Timestamp_t, constants::CommentLength>;
  27. using CommentList = CommentListT<Timestamp_t, constants::CommentLength>;
  28. using CommentRingBuffer = CommentRingBufferT<Timestamp_t, constants::CommentLength, constants::CommentsCached>;
  29. using DigInEv = DigInEvT<Timestamp_t>;
  30. using DigInEvList = DigInEvListT<Timestamp_t>;
  31. using DigInEvRingBuffer = DigInEvRingBufferT<Timestamp_t, constants::DigInEvCached>;
  32. using Spike = SpikeT<Datum_t, Timestamp_t, Channel_t, Unit_t, constants::EventSnippetSamples>;
  33. using SpikeRingBuffer = SpikeRingBufferT<Datum_t, Timestamp_t, Channel_t, Unit_t, constants::EventSnippetSamples, constants::SpikesCached>;
  34. }
  35. #endif /* end of include guard: CERERINGBUFFER_H_18A7F155 */