本文整理汇总了C++中ImageBase::DataType方法的典型用法代码示例。如果您正苦于以下问题:C++ ImageBase::DataType方法的具体用法?C++ ImageBase::DataType怎么用?C++ ImageBase::DataType使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ImageBase
的用法示例。
在下文中一共展示了ImageBase::DataType方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: IsImageFlush
bool VectorProgram::IsImageFlush(const ImageBase& Source)
{
if (Source.Width() * Source.NbChannels() * Source.DepthBytes() != Source.Step())
return false; // Image has padding
if ((Source.Width() * Source.NbChannels()) % GetVectorWidth(Source.DataType()) != 0)
return false; // width is not a multiple of VectorWidth
return true;
}
示例2: GetRange
cl::NDRange VectorProgram::GetRange(EProgramVersions Version, const ImageBase& Img1)
{
switch (Version)
{
case Fast:
// The fast version uses a 1D range
return cl::NDRange(Img1.Width() * Img1.Height() * Img1.NbChannels() / GetVectorWidth(Img1.DataType()), 1, 1);
case Standard:
case Unaligned:
// The other versions use a 2D range
return Img1.VectorRange(GetVectorWidth(Img1.DataType()));
case NbVersions:
default:
throw cl::Error(CL_INVALID_PROGRAM, "Invalid program version in VectorProgram");
}
}
示例3: IsImageAligned
bool VectorProgram::IsImageAligned(const ImageBase& Source)
{
uint BytesPerWorker = Source.DepthBytes() * Source.NbChannels() * GetVectorWidth(Source.DataType());
return (Source.Step() % BytesPerWorker == 0);
}