v2.0.0
Loading...
Searching...
No Matches
fiff_sparse_matrix.h File Reference

FIFF sparse matrix: column / row-compressed sparse storage backed by Eigen::SparseMatrix. More...

#include "fiff_global.h"
#include "fiff_types.h"
#include "fiff_tag.h"
#include <Eigen/Core>
#include <Eigen/SparseCore>
#include <memory>
#include <QSharedPointer>
#include <QDebug>
Include dependency graph for fiff_sparse_matrix.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  FIFFLIB::FiffSparseMatrix
 Sparse FIFF matrix: CCS or RCS storage with the value / index / pointer triple as written by FiffStream::write_float_sparse_*. More...

Namespaces

namespace  FIFFLIB
 FIFF file I/O, in-memory data structures and high-level readers/writers.

Detailed Description

FIFF sparse matrix: column / row-compressed sparse storage backed by Eigen::SparseMatrix.

SPDX-License-Identifier: BSD-3-Clause Copyright (c) 2026 MNE-CPP Authors

Author
Christoph Dinh chris.nosp@m.toph.nosp@m..dinh.nosp@m.@mne.nosp@m.-cpp..nosp@m.org
Since
2.0.0
Date
February 2026

The FIFF matrix tag format supports three storage modes encoded in the type word (see fiff_tag.h): dense, column-compressed sparse (MATRIX_CODING_CCS) and row-compressed sparse (MATRIX_CODING_RCS). FiffSparseMatrix is the in-memory representation of the two sparse forms. It owns the value array, the index array and the pointer array in the layout the FIFF stream produced, and exposes a conversion to Eigen::SparseMatrix so downstream linear-algebra code can operate on it directly. This is what backs large sparse blocks such as the source-space adjacency, the SourceSpace patch matrices and the volume-source-space neighbourhood matrices.

Definition in file fiff_sparse_matrix.h.