52#include <QSharedPointer>
94 typedef QSharedPointer<FsSurface>
SPtr;
109 explicit FsSurface(
const QString& p_sFile);
120 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);
223 static Eigen::VectorXf
read_curv(
const QString &p_sFileName);
242 inline const Eigen::MatrixX3f&
rr()
const;
250 inline const Eigen::MatrixX3i&
tris()
const;
258 inline const Eigen::MatrixX3f&
nn()
const;
266 inline const Eigen::VectorXf&
curv()
const;
274 inline const Eigen::Vector3f&
offset()
const;
282 inline Eigen::Vector3f&
offset();
307 static qint32
fread3(QDataStream &stream);
316 static qint32
fread3(std::iostream &stream);
326 static Eigen::VectorXi
fread3_many(QDataStream &stream, qint32 count);
336 static Eigen::VectorXi
fread3_many(std::iostream &stream, qint32 count);
343 Eigen::MatrixX3f m_matRR;
344 Eigen::MatrixX3i m_matTris;
345 Eigen::MatrixX3f m_matNN;
346 Eigen::VectorXf m_vecCurv;
348 Eigen::Vector3f m_vecOffset;
364 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)