52#include <QSharedPointer>
96 typedef QSharedPointer<FsSurface>
SPtr;
111 explicit FsSurface(
const QString& p_sFile);
122 explicit FsSurface(
const QString& subject_id, qint32
hemi,
const QString&
surf,
const QString& subjects_dir);
152 inline qint32
hemi()
const;
168 inline QString
surf()
const;
185 static bool read(
const QString& subject_id, qint32
hemi,
const QString&
surf,
const QString& subjects_dir,
FsSurface& p_Surface,
bool p_bLoadCurvature =
true);
201 static bool read(
const QString& path, qint32
hemi,
const QString&
surf,
FsSurface& p_Surface,
bool p_bLoadCurvature =
true);
215 static bool read(
const QString& p_sFileName,
FsSurface& p_Surface,
bool p_bLoadCurvature =
true);
225 static Eigen::VectorXf
read_curv(
const QString& p_sFileName);
244 inline const Eigen::MatrixX3f&
rr()
const;
252 inline const Eigen::MatrixX3i&
tris()
const;
260 inline const Eigen::MatrixX3f&
nn()
const;
268 inline const Eigen::VectorXf&
curv()
const;
276 inline const Eigen::Vector3f&
offset()
const;
284 inline Eigen::Vector3f&
offset();
309 static qint32
fread3(QDataStream& stream);
318 static qint32
fread3(std::iostream& stream);
328 static Eigen::VectorXi
fread3_many(QDataStream& stream, qint32 count);
338 static Eigen::VectorXi
fread3_many(std::iostream& stream, qint32 count);
345 Eigen::MatrixX3f m_matRR;
346 Eigen::MatrixX3i m_matTris;
347 Eigen::MatrixX3f m_matNN;
348 Eigen::VectorXf m_vecCurv;
350 Eigen::Vector3f m_vecOffset;
366 return m_iHemi == -1;
Export/import macros and build-info accessors for the FSLIB FreeSurfer I/O library.
FreeSurfer surface, annotation and parcellation I/O for mne-cpp.
static Eigen::VectorXf read_curv(const QString &p_sFileName)
const Eigen::MatrixX3f & nn() const
static Eigen::VectorXi fread3_many(QDataStream &stream, qint32 count)
QSharedPointer< FsSurface > SPtr
static qint32 fread3(QDataStream &stream)
const Eigen::MatrixX3i & tris() const
const Eigen::Vector3f & offset() const
static bool read(const QString &subject_id, qint32 hemi, const QString &surf, const QString &subjects_dir, FsSurface &p_Surface, bool p_bLoadCurvature=true)
const Eigen::MatrixX3f & rr() const
const Eigen::VectorXf & curv() const
QSharedPointer< const FsSurface > ConstSPtr
static Eigen::MatrixX3f compute_normals(const Eigen::MatrixX3f &rr, const Eigen::MatrixX3i &tris)