#ifndef __STIMULUSSEQUENCE_HPP__ #define __STIMULUSSEQUENCE_HPP__ #include #include #include typedef struct _SequenceFileHeader { char finfo[12]; // "sequence" char version[4]; // "001" int Length; int MinStim; int MaxStim; } SequenceFileHeader; class StimulusSequence { protected: std::string SequenceFileName; //directory and filename SequenceFileHeader SHeader; std::vector CurStimSequence; int SeqPointer; int Length; public: StimulusSequence(); StimulusSequence(const char* _SequenceFileName); ~StimulusSequence(); bool Load(const char* _SequenceFileName); void GenerateRandomSequence(int, int, const gsl_rng* gslr); int GetNextSeqElement(); int GetNextRandomElement(const gsl_rng* gslr); }; #endif // __STIMULUSSEQUENCE_HPP__