add some functions

This commit is contained in:
2023-09-15 16:15:07 +08:00
parent b499d907f7
commit 312c746279
3 changed files with 310 additions and 1 deletions

View File

@ -304,6 +304,24 @@ namespace LibCmo::VxMath {
}
};
template<class _Ty, std::enable_if_t<std::is_pointer_v<_Ty>, int> = 0>
class VxStridedData {
public:
VxStridedData(_Ty ptr, CK2::CKDWORD stride) :
m_Ptr(reinterpret_cast<CK2::CKBYTE*>(m_Ptr)),
m_Stride(stride)
{}
~VxStridedData() {}
_Ty operator[](size_t idx) {
return reinterpret_cast<_Ty>(m_Ptr + (m_Stride * idx));
}
private:
CK2::CKBYTE* m_Ptr;
CK2::CKDWORD m_Stride;
};
/**
* VxImageDescEx describe the height, width,
* and etc for image.