17#ifndef __dwi_tractography_mapping_gaussian_voxel_h__
18#define __dwi_tractography_mapping_gaussian_voxel_h__
25 namespace Tractography {
58 Voxel (
const int x,
const int y,
const int z) : Base (x, y, z) ,
VoxelAddon () { }
89 void operator+= (
const Eigen::Vector3d&)
const { assert (0); }
110 Dixel (
const Eigen::Vector3i& V,
const dir_index_type b) : Base (V, b),
VoxelAddon () { }
131 using vector_type = Eigen::Matrix<default_type, Eigen::Dynamic, 1>;
174 using VoxType =
Voxel;
178 const Voxel temp (v, l, f);
179 iterator existing = std::set<Voxel>::find (temp);
180 if (existing == std::set<Voxel>::end())
181 std::set<Voxel>::insert (temp);
183 (*existing).add (l, f);
197 iterator existing = std::set<VoxelDEC>::find (temp);
198 if (existing == std::set<VoxelDEC>::end())
199 std::set<VoxelDEC>::insert (temp);
201 (*existing).add (d, l, f);
210 using VoxType =
Dixel;
211 using dir_index_type = Dixel::dir_index_type;
215 const Dixel temp (v, d, l, f);
216 iterator existing = std::set<Dixel>::find (temp);
217 if (existing == std::set<Dixel>::end())
218 std::set<Dixel>::insert (temp);
220 (*existing).add (l, f);
235 iterator existing = std::set<VoxelTOD>::find (temp);
236 if (existing == std::set<VoxelTOD>::end())
237 std::set<VoxelTOD>::insert (temp);
239 (*existing).add (t, l, f);
Array & operator=(const MR::Helper::ConstRow< ImageType > &row)
DWI::Directions::index_type index_type
Dixel(const Eigen::Vector3i &V)
Dixel & operator=(const Dixel &V)
Dixel(const Eigen::Vector3i &V, const dir_index_type b)
void operator+=(const default_type) const
Dixel(const Eigen::Vector3i &V, const dir_index_type b, const default_type l)
Dixel(const Eigen::Vector3i &V, const dir_index_type b, const default_type l, const default_type f)
bool operator<(const Dixel &V) const
bool operator==(const Dixel &V) const
void add(const default_type l, const default_type f) const
VoxelAddon(const default_type v)
default_type get_factor() const
void normalize(const default_type l) const
void operator=(const default_type f)
void operator+=(const default_type f) const
VoxelDEC & operator=(const VoxelDEC &V)
VoxelDEC(const Eigen::Vector3i &V)
bool operator==(const VoxelDEC &V) const
VoxelDEC(const Eigen::Vector3i &V, const Eigen::Vector3d &d, const default_type l)
void operator+=(const default_type) const
bool operator<(const VoxelDEC &V) const
VoxelDEC(const Eigen::Vector3i &V, const Eigen::Vector3d &d)
VoxelDEC(const Eigen::Vector3i &V, const Eigen::Vector3d &d, const default_type l, const default_type f)
void add(const Eigen::Vector3d &, const default_type) const
void add(const Eigen::Vector3d &i, const default_type l, const default_type f) const
Voxel & operator=(const Voxel &V)
Voxel(const Eigen::Vector3i &v, const default_type l)
Voxel(const Eigen::Vector3i &v, const default_type l, const default_type f)
void operator+=(const default_type l) const
bool operator==(const Voxel &V) const
bool operator<(const Voxel &V) const
Voxel(const int x, const int y, const int z)
void add(const default_type l, const default_type f) const
Voxel(const Eigen::Vector3i &that)
bool operator==(const VoxelTOD &V) const
VoxelTOD & operator=(const VoxelTOD &V)
VoxelTOD(const Eigen::Vector3i &V, const vector_type &t)
VoxelTOD(const Eigen::Vector3i &V, const vector_type &t, const default_type l)
void add(const vector_type &i, const default_type l, const default_type f) const
VoxelTOD(const Eigen::Vector3i &V)
void operator+=(const vector_type &) const
VoxelTOD(const Eigen::Vector3i &V, const vector_type &t, const default_type l, const default_type f)
void add(const vector_type &, const default_type) const
Eigen::Matrix< default_type, Eigen::Dynamic, 1 > vector_type
bool operator<(const VoxelTOD &V) const
Derived & operator+=(const MR::Helper::ConstRow< ImageType > &row)
void set(HeaderType &header, const List &stride)
set the strides of header from a vector<ssize_t>
double default_type
the default type used throughout MRtrix