51 #include <Eigen/SparseCore>
60 using namespace Eigen;
80 printf(
"\tFiff evoked data set not found.\n");
89 : info(p_FiffEvokedSet.info)
90 , evoked(p_FiffEvokedSet.evoked)
119 QList<FiffEvoked>::ConstIterator ev;
121 res.
evoked.push_back(ev->pick_channels(include, exclude));
173 printf(
"Data is already compensated as desired.\n");
180 for(qint16 i=0; i < p_FiffEvokedSet.
evoked.size(); ++i)
182 p_FiffEvokedSet.
evoked[i].data = ctf_comp.
data->data*p_FiffEvokedSet.
evoked.at(i).data;
195 if(!p_FiffEvokedSet.
evoked.size()) {
196 printf(
"No evoked response data sets in %s\n",p_FiffEvokedSet.
info.
filename.toLatin1().constData());
200 printf(
"\nFound %d evoked response data sets in %s :\n",p_FiffEvokedSet.
evoked.size(),p_FiffEvokedSet.
info.
filename.toLatin1().constData());
202 for(qint32 i = 0; i < p_FiffEvokedSet.
evoked.size(); ++i) {
203 printf(
"%s (%s)\n",p_FiffEvokedSet.
evoked.at(i).comment.toLatin1().constData(),p_FiffEvokedSet.
evoked.at(i).aspectKindToString().toLatin1().constBegin());
214 p_FiffEvokedSet.
clear();
220 QString t_sFileName = t_pStream->streamName();
222 printf(
"Exploring %s ...\n",t_sFileName.toUtf8().constData());
224 QList<FiffDirEntry> t_Dir;
226 if(!t_pStream->open(t_Tree, t_Dir))
232 if(!t_pStream->read_meas_info(t_Tree, p_FiffEvokedSet.
info, meas))
238 QList<FiffDirTree> processed = meas.
dir_tree_find(FIFFB_PROCESSED_DATA);
239 if (processed.size() == 0)
241 qWarning(
"Could not find processed data");
245 QList<FiffDirTree> evoked_node = meas.
dir_tree_find(FIFFB_EVOKED);
246 if (evoked_node.size() == 0)
248 qWarning(
"Could not find evoked data");
252 QStringList comments;
253 QList<fiff_int_t> aspect_kinds;
255 if(!t_pStream->get_evoked_entries(evoked_node, comments, aspect_kinds, t))
256 t = QString(
"None found, must use integer");
257 printf(
"\tFound %d datasets\n", evoked_node.size());
259 for(qint32 i = 0; i < comments.size(); ++i)
262 printf(
">> Processing %s <<\n", comments[i].toLatin1().constData());
265 p_FiffEvokedSet.
evoked.push_back(t_FiffEvoked);
FiffEvokedSet pick_channels(const QStringList &include=defaultQStringList, const QStringList &exclude=defaultQStringList) const
QList< FiffDirTree > dir_tree_find(fiff_int_t p_kind) const
qint32 get_current_comp()
bool compensate_to(FiffEvokedSet &p_FiffEvokedSet, fiff_int_t to) const
void set_current_comp(fiff_int_t value)
QSharedPointer< FiffStream > SPtr
static bool read(QIODevice &p_IODevice, FiffEvokedSet &p_FiffEvokedSet, QPair< QVariant, QVariant > baseline=defaultVariantPair, bool proj=true)
FiffNamedMatrix::SDPtr data
Directory tree structure.
bool make_compensator(fiff_int_t from, fiff_int_t to, FiffCtfComp &ctf_comp, bool exclude_comp_chs=false) const
FiffEvokedSet class declaration.
bool find_evoked(const FiffEvokedSet &p_FiffEvokedSet) const
QList< FiffEvoked > evoked
CTF software compensation data.
FiffTag class declaration, which provides fiff tag I/O and processing methods.
static bool read(QIODevice &p_IODevice, FiffEvoked &p_FiffEvoked, QVariant setno=0, QPair< QVariant, QVariant > baseline=defaultVariantPair, bool proj=true, fiff_int_t p_aspect_kind=FIFFV_ASPECT_AVERAGE)