v2.0.0
Loading...
Searching...
No Matches
FSLIB::FsAnnotation Class Reference

Single-hemisphere FreeSurfer parcellation: vertex → region label plus embedded colortable. More...

#include <fs_annotation.h>

Public Types

typedef QSharedPointer< FsAnnotationSPtr
typedef QSharedPointer< const FsAnnotationConstSPtr

Public Member Functions

 FsAnnotation ()
 FsAnnotation (const QString &p_sFileName)
 FsAnnotation (const QString &subject_id, qint32 hemi, const QString &surf, const QString &subjects_dir)
 FsAnnotation (const QString &path, qint32 hemi, const QString &surf)
 ~FsAnnotation ()
void clear ()
bool isEmpty () const
qint32 hemi () const
Eigen::VectorXi & getVertices ()
const Eigen::VectorXi getVertices () const
Eigen::VectorXi & getLabelIds ()
const Eigen::VectorXi getLabelIds () const
FsColortablegetColortable ()
const FsColortable getColortable () const
bool toLabels (const FsSurface &p_surf, QList< FsLabel > &p_qListLabels, QList< Eigen::RowVector4i > &p_qListLabelRGBAs, const QStringList &lLabelPicks=QStringList()) const
QString filePath () const
QString fileName () const

Static Public Member Functions

static bool read (const QString &subject_id, qint32 hemi, const QString &atlas, const QString &subjects_dir, FsAnnotation &p_Annotation)
static bool read (const QString &path, qint32 hemi, const QString &atlas, FsAnnotation &p_Annotation)
static bool read (const QString &p_sFileName, FsAnnotation &p_Annotation)

Detailed Description

Single-hemisphere FreeSurfer parcellation: vertex → region label plus embedded colortable.

Holds the parsed contents of one .annot file: the dense per-vertex label assignment, the explicit vertex index list it was authored against, and the FsColortable describing the colour and name of every region. Indexing is aligned with the matching FsSurface for the same subject + hemisphere, so label[v] is the region of surface vertex v.

Definition at line 82 of file fs_annotation.h.

Member Typedef Documentation

◆ ConstSPtr

typedef QSharedPointer<const FsAnnotation> FSLIB::FsAnnotation::ConstSPtr

Const shared pointer type for FsAnnotation.

Definition at line 87 of file fs_annotation.h.

◆ SPtr

typedef QSharedPointer<FsAnnotation> FSLIB::FsAnnotation::SPtr

Shared pointer type for FsAnnotation.

Definition at line 86 of file fs_annotation.h.

Constructor & Destructor Documentation

◆ FsAnnotation() [1/4]

FsAnnotation::FsAnnotation ( )

Default constructor

Definition at line 43 of file fs_annotation.cpp.

◆ FsAnnotation() [2/4]

FsAnnotation::FsAnnotation ( const QString & p_sFileName)
explicit

Construts the annotation by reading it of the given file.

Parameters
[in]p_sFileNameFsAnnotation file.

Definition at line 50 of file fs_annotation.cpp.

◆ FsAnnotation() [3/4]

FsAnnotation::FsAnnotation ( const QString & subject_id,
qint32 hemi,
const QString & surf,
const QString & subjects_dir )
explicit

Construts the annotation by reading it of the given file.

Parameters
[in]subject_idName of subject.
[in]hemiWhich hemisphere to load {0 -> lh, 1 -> rh}.
[in]atlasName of the atlas to load (eg. aparc.a2009s, aparc, aparc.DKTatlas40, BA, BA.thresh, ...).
[in]subjects_dirSubjects directory.

Definition at line 60 of file fs_annotation.cpp.

◆ FsAnnotation() [4/4]

FsAnnotation::FsAnnotation ( const QString & path,
qint32 hemi,
const QString & surf )
explicit

Construts the annotation by reading it of the given file.

Parameters
[in]pathpath to surface directory.
[in]hemiWhich hemisphere to load {0 -> lh, 1 -> rh}.
[in]atlasName of the atlas to load (eg. aparc.a2009s, aparc, aparc.DKTatlas40, BA, BA.thresh, ...).
Returns
true if read sucessful, false otherwise.

Definition at line 68 of file fs_annotation.cpp.

◆ ~FsAnnotation()

FsAnnotation::~FsAnnotation ( )

Destroys the annotation.

Definition at line 76 of file fs_annotation.cpp.

Member Function Documentation

◆ clear()

void FsAnnotation::clear ( )

Initializes the FsAnnotation.

Definition at line 82 of file fs_annotation.cpp.

◆ fileName()

QString FSLIB::FsAnnotation::fileName ( ) const
inline

annotation file name

Returns
the surf file name.

Definition at line 352 of file fs_annotation.h.

◆ filePath()

QString FSLIB::FsAnnotation::filePath ( ) const
inline

annotation file path

Returns
the surf file path.

Definition at line 345 of file fs_annotation.h.

◆ getColortable() [1/2]

FsColortable & FSLIB::FsAnnotation::getColortable ( )
inline

Returns the coloratable containing the label based nomenclature

Returns
colortable.

Definition at line 331 of file fs_annotation.h.

◆ getColortable() [2/2]

const FsColortable FSLIB::FsAnnotation::getColortable ( ) const
inline

Returns the coloratable containing the label based nomenclature

Returns
colortable.

Definition at line 338 of file fs_annotation.h.

◆ getLabelIds() [1/2]

Eigen::VectorXi & FSLIB::FsAnnotation::getLabelIds ( )
inline

Returns the vertix labels

Returns
vertix labels.

Definition at line 317 of file fs_annotation.h.

◆ getLabelIds() [2/2]

const Eigen::VectorXi FSLIB::FsAnnotation::getLabelIds ( ) const
inline

Returns the vertix labels

Returns
vertix labels.

Definition at line 324 of file fs_annotation.h.

◆ getVertices() [1/2]

Eigen::VectorXi & FSLIB::FsAnnotation::getVertices ( )
inline

Returns the vertix indeces

Returns
vertix indeces.

Definition at line 303 of file fs_annotation.h.

◆ getVertices() [2/2]

const Eigen::VectorXi FSLIB::FsAnnotation::getVertices ( ) const
inline

Returns the vertix indeces

Returns
vertix indeces.

Definition at line 310 of file fs_annotation.h.

◆ hemi()

qint32 FSLIB::FsAnnotation::hemi ( ) const
inline

Returns the hemisphere id (0 = lh; 1 = rh)

Returns
hemisphere id.

Definition at line 289 of file fs_annotation.h.

◆ isEmpty()

bool FSLIB::FsAnnotation::isEmpty ( ) const
inline

Returns whether FsAnnotation is empty.

Returns
true if is empty, false otherwise.

Definition at line 296 of file fs_annotation.h.

◆ read() [1/3]

bool FsAnnotation::read ( const QString & p_sFileName,
FsAnnotation & p_Annotation )
static

Reads an annotation of a file

Parameters
[in]p_sFileNameFsAnnotation file.
[out]p_Annotationthe read annotation.
Returns
true if successful, false otherwise.

Definition at line 116 of file fs_annotation.cpp.

◆ read() [2/3]

bool FsAnnotation::read ( const QString & path,
qint32 hemi,
const QString & atlas,
FsAnnotation & p_Annotation )
static

Reads a FreeSurfer annotation file

Parameters
[in]pathpath to label directory.
[in]hemiWhich hemisphere to load {0 -> lh, 1 -> rh}.
[in]atlasName of the atlas to load (eg. aparc.a2009s, aparc, aparc.DKTatlas40, BA, BA.thresh, ...).
[out]p_AnnotationThe read annotation.
Returns
true if read sucessful, false otherwise.

Definition at line 104 of file fs_annotation.cpp.

◆ read() [3/3]

bool FsAnnotation::read ( const QString & subject_id,
qint32 hemi,
const QString & atlas,
const QString & subjects_dir,
FsAnnotation & p_Annotation )
static

Reads a FreeSurfer annotation file

Parameters
[in]subject_idName of subject.
[in]hemiWhich hemisphere to load {0 -> lh, 1 -> rh}.
[in]atlasName of the atlas to load (eg. aparc.a2009s, aparc, aparc.DKTatlas40, BA, BA.thresh, ...).
[in]subjects_dirSubjects directory.
[out]p_AnnotationThe read annotation.
Returns
true if read sucessful, false otherwise.

Definition at line 92 of file fs_annotation.cpp.

◆ toLabels()

bool FsAnnotation::toLabels ( const FsSurface & p_surf,
QList< FsLabel > & p_qListLabels,
QList< Eigen::RowVector4i > & p_qListLabelRGBAs,
const QStringList & lLabelPicks = QStringList() ) const

python labels_from_parc

Converts annotation to a label list and colortable

Parameters
[in]p_surfthe surface to read the vertex positions from.
[out]p_qListLabelsthe converted labels are appended to a given list. Stored data are not affected.
[out]p_qListLabelRGBAsthe converted label RGBAs are appended to a given list. Stored data are not affected.
[out]lLabelPicksthe label names which should be picked.
Returns
true if successful, false otherwise.

Definition at line 274 of file fs_annotation.cpp.


The documentation for this class was generated from the following files: