tttrlib
A library for time-tagged time resolved data
Loading...
Searching...
No Matches
Public Member Functions | Friends | List of all members
CLSMFrame Class Reference

#include <CLSMFrame.h>

Inheritance diagram for CLSMFrame:
TTTRSelection TTTRRange

Public Member Functions

std::vector< CLSMLine * > get_lines ()
 Get a vector containing pointers to the CLSMLines in the CLSMFrame.
 
size_t size () final
 Get the number of lines in the CLSMFrame.
 
 CLSMFrame ()
 Default constructor for CLSMFrame.
 
 CLSMFrame (const CLSMFrame &old_frame, bool fill=true)
 Copy constructor for CLSMFrame.
 
virtual ~CLSMFrame ()
 Destructor for CLSMFrame.
 
 CLSMFrame (size_t frame_start, size_t frame_stop, TTTR *tttr)
 Constructor for CLSMFrame with specified frame indices and a TTTR object.
 
void append (CLSMLine *line)
 Append a CLSMLine to the current CLSMFrame.
 
CLSMLineoperator[] (unsigned int i_line)
 Retrieve a pointer to the CLSMLine with the specified line number.
 
CLSMFrameoperator+= (const CLSMFrame &rhs)
 Add the corresponding CLSMLines of another CLSMFrame to the current frame.
 
void crop (int line_start, int line_stop, int pixel_start, int pixel_stop)
 Crop the CLSMFrame by selecting a region of lines and pixels.
 
- Public Member Functions inherited from TTTRSelection
TTTRget_tttr ()
 
void set_tttr (TTTR *tttr)
 
 TTTRSelection (int start, int stop, TTTR *tttr)
 
 TTTRSelection (const TTTRSelection &p2)
 Copy constructor.
 
 TTTRSelection (std::shared_ptr< TTTR > tttr=nullptr)
 
- Public Member Functions inherited from TTTRRange
 TTTRRange (int start, int stop)
 Constructs a TTTRRange with the specified start and stop indices.
 
 TTTRRange (int start=-1, int stop=-1, TTTRRange *other=nullptr)
 Constructs a TTTRRange.
 
 TTTRRange (const TTTRRange &p2)
 Copy constructor.
 
std::vector< int > get_tttr_indices ()
 Gets the vector of TTTR indices assigned to the range.
 
int get_start () const
 Gets the start index of the TTTR range.
 
int get_stop () const
 Gets the stop index of the TTTR range.
 
std::vector< int > get_start_stop ()
 Gets a vector of the start and stop TTTR indices of the range.
 
unsigned long get_stop_time (TTTR *tttr) const
 Gets the stop time of the TTTR range.
 
unsigned long get_start_time (TTTR *tttr) const
 Gets the start time of the TTTR range.
 
std::vector< unsigned long > get_start_stop_time (TTTR *tttr)
 Gets a vector of the start and stop times of the TTTR range.
 
unsigned int get_duration (TTTR *tttr)
 Gets the duration between the start and stop times of the TTTR range.
 
void insert (int idx)
 Inserts an index into the TTTR index vector.
 
void clear ()
 Clears the TTTR index set.
 
int strip (const std::vector< int > &tttr_indices, int offset=0)
 Strips TTTR indices from a range starting at tttr_indices[offset].
 
double get_mean_microtime (TTTR *tttr_data, double microtime_resolution=-1.0, int minimum_number_of_photons=1)
 Computes the mean microtime in units of the microtime resolution.
 
void get_microtime_histogram (std::shared_ptr< TTTR > tttr, double **histogram, int *n_histogram, double **time, int *n_time, unsigned short micro_time_coarsening)
 Gets the microtime histogram for the TTTRRange.
 
double get_mean_lifetime (TTTR *tttr_data, int minimum_number_of_photons=3, TTTR *tttr_irf=nullptr, double m0_irf=1.0, double m1_irf=1.0, double dt=1.0, std::vector< double > *background=nullptr, double m0_bg=0.0, double m1_bg=0.0, double background_fraction=-1.0)
 Computes the mean lifetime for the TTTRRange.
 
bool operator== (const TTTRRange &other) const
 Equality operator.
 
bool operator!= (const TTTRRange &other) const
 Inequality operator.
 
TTTRRangeoperator+= (const TTTRRange &rhs)
 Compound assignment addition operator.
 

Friends

class CLSMImage
 

Additional Inherited Members

- Static Public Member Functions inherited from TTTRRange
static double compute_mean_lifetime (std::vector< int > &tttr_indices, TTTR *tttr_data, int minimum_number_of_photons=3, TTTR *tttr_irf=nullptr, double m0_irf=1.0, double m1_irf=1.0, double dt=1.0, std::vector< double > *background=nullptr, double m0_bg=0.0, double m1_bg=0.0, double background_fraction=-1.0)
 Computes the mean lifetime for a set of TTTR indices.
 
- Protected Attributes inherited from TTTRSelection
TTTR_tttr = nullptr
 
- Protected Attributes inherited from TTTRRange
itlib::flat_set< int > _tttr_indices {}
 Set of TTTR indices in the range.
 

Constructor & Destructor Documentation

◆ CLSMFrame() [1/3]

CLSMFrame::CLSMFrame ( )

Default constructor for CLSMFrame.

This constructor creates an empty CLSMFrame object.

◆ CLSMFrame() [2/3]

CLSMFrame::CLSMFrame ( const CLSMFrame & old_frame,
bool fill = true )
inline

Copy constructor for CLSMFrame.

Parameters
old_frame[in] Reference to the existing CLSMFrame object to be copied.
fill[in] If set to false, the content of the pixels is not copied.

◆ ~CLSMFrame()

virtual CLSMFrame::~CLSMFrame ( )
inlinevirtual

Destructor for CLSMFrame.

Deletes dynamically allocated CLSMLine objects in the lines vector.

◆ CLSMFrame() [3/3]

CLSMFrame::CLSMFrame ( size_t frame_start,
size_t frame_stop,
TTTR * tttr )
explicit

Constructor for CLSMFrame with specified frame indices and a TTTR object.

This constructor initializes a CLSMFrame object with the specified frame indices (frame_start to frame_stop) using a TTTR (Time-Tagged Time-Resolved) data object.

Parameters
frame_start[in] The starting frame index for the CLSMFrame.
frame_stop[in] The stopping frame index for the CLSMFrame.
tttr[in] Pointer to a TTTR object containing time-resolved data.

Member Function Documentation

◆ append()

void CLSMFrame::append ( CLSMLine * line)

Append a CLSMLine to the current CLSMFrame.

Parameters
line[in] Pointer to the CLSMLine to be appended.

◆ crop()

void CLSMFrame::crop ( int line_start,
int line_stop,
int pixel_start,
int pixel_stop )

Crop the CLSMFrame by selecting a region of lines and pixels.

This function crops the CLSMFrame by selecting a specific range of lines (from line_start to line_stop) and pixels (from pixel_start to pixel_stop).

Parameters
line_start[in] The starting line index for cropping.
line_stop[in] The stopping line index for cropping.
pixel_start[in] The starting pixel index for cropping.
pixel_stop[in] The stopping pixel index for cropping.

◆ get_lines()

std::vector< CLSMLine * > CLSMFrame::get_lines ( )
inline

Get a vector containing pointers to the CLSMLines in the CLSMFrame.

This function returns a vector containing pointers to the CLSMLines stored in the CLSMFrame.

Returns
A vector of CLSMLine pointers.

◆ operator+=()

CLSMFrame & CLSMFrame::operator+= ( const CLSMFrame & rhs)
inline

Add the corresponding CLSMLines of another CLSMFrame to the current frame.

This operator performs element-wise addition, adding each CLSMLine of the right-hand side (rhs) CLSMFrame to the corresponding CLSMLine of the current frame.

Parameters
rhs[in] The right-hand side CLSMFrame to be added.
Returns
A reference to the modified current CLSMFrame.

◆ operator[]()

CLSMLine * CLSMFrame::operator[] ( unsigned int i_line)
inline

Retrieve a pointer to the CLSMLine with the specified line number.

Parameters
i_line[in] The line number.
Returns
A pointer to the CLSMLine with the requested number.

◆ size()

size_t CLSMFrame::size ( )
inlinefinalvirtual

Get the number of lines in the CLSMFrame.

Returns
The number of lines in the CLSMFrame.

Reimplemented from TTTRRange.

Friends And Related Symbol Documentation

◆ CLSMImage

friend class CLSMImage
friend

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