Revamp Chronomenon: ChronoFrame and ChronoSeq are new classes

Chronomenon is now the base class category for stored raw
stim data.
This commit is contained in:
2025-10-05 21:41:26 -04:00
parent 27ff4a3a0a
commit 4a55ff9bf2
2 changed files with 35 additions and 21 deletions
+32
View File
@@ -0,0 +1,32 @@
#ifndef _CHRONO_FRAME_H
#define _CHRONO_FRAME_H
#include <vector>
#include <chronomenon.h>
#include <mentalEntity.h>
#include <user/stimFrame.h>
namespace smo {
class ChronoFrame
: public Chronomenon, public MentalEntity
{
public:
/** FIXME:
* May be better to use a std::map here, where the key is a kind of ID
* assigned to the stimulus source.
*/
std::vector<stim_buff::StimFrame> stimuli;
};
class ChronoSeq
: public Chronomenon, public MentalEntity
{
public:
std::vector<std::pair<stim_buff::SimultaneityStamp, ChronoFrame>> frames;
};
} // namespace smo
#endif // _CHRONO_FRAME_H
+3 -21
View File
@@ -1,30 +1,12 @@
#ifndef _CHRONOMENON_H
#define _CHRONOMENON_H
#include <vector>
#include <qualeBundle.h>
#include <mentalEntity.h>
namespace smo {
class Chronomenon
: public MentalEntity
{
public:
class Timestamp
{
uintptr_t value;
};
class Duration
{
uintptr_t value;
};
public:
Chronomenon extract(Timestamp start, Duration len);
public:
std::vector<QualeBundle> qualia;
};
#endif
} // namespace smo
#endif // _CHRONOMENON_H