IDA C++ SDK 9.2
Loading...
Searching...
No Matches
lcsdiff_t< T > Class Template Reference

Calculate difference between two vectors. More...

#include <diff3.hpp>

Public Types

using result_t = lcsdiff_res_t<T>

Public Member Functions

 lcsdiff_t (const T &_x, const T &_y, size_t _n, size_t _m)
 prepare LCS table
void diff ()
 get a difference between two vectors RESULT will contain only TDLA_EQ, TDLA_ADD, TDLA_SUB actions

Public Attributes

result_t result

Protected Attributes

const T & x
 left argument
const T & y
 right argument
const size_t n = 0
 left argument size
const size_t m = 0
 right argument size
sizevec_t lcs_table
 table to store LCS for each step of the calculation

Detailed Description

template<class T>
class lcsdiff_t< T >

Calculate difference between two vectors.

Use Longest Common Subsequences (LCS) approach: https://en.wikipedia.org/wiki/Longest_common_subsequence_problem

Member Typedef Documentation

◆ result_t

template<class T>
using lcsdiff_t< T >::result_t = lcsdiff_res_t<T>

Constructor & Destructor Documentation

◆ lcsdiff_t()

template<class T>
lcsdiff_t< T >::lcsdiff_t ( const T & _x,
const T & _y,
size_t _n,
size_t _m )
inline

prepare LCS table

Member Function Documentation

◆ diff()

template<class T>
void lcsdiff_t< T >::diff ( )
inline

get a difference between two vectors RESULT will contain only TDLA_EQ, TDLA_ADD, TDLA_SUB actions

Member Data Documentation

◆ x

template<class T>
const T& lcsdiff_t< T >::x
protected

left argument

◆ y

template<class T>
const T& lcsdiff_t< T >::y
protected

right argument

◆ n

template<class T>
const size_t lcsdiff_t< T >::n = 0
protected

left argument size

◆ m

template<class T>
const size_t lcsdiff_t< T >::m = 0
protected

right argument size

◆ lcs_table

template<class T>
sizevec_t lcsdiff_t< T >::lcs_table
protected

table to store LCS for each step of the calculation

◆ result

template<class T>
result_t lcsdiff_t< T >::result

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