[arrayfire] 158/248: Add s16 and u16 types to image (graphics)
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Tue Nov 17 15:54:21 UTC 2015
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch dfsg-clean
in repository arrayfire.
commit 86457a9a6b1a8e92e449834abdd7ece1511636ba
Author: Shehzan Mohammed <shehzan at arrayfire.com>
Date: Thu Oct 29 21:51:11 2015 -0400
Add s16 and u16 types to image (graphics)
---
src/api/c/graphics_common.cpp | 4 ++++
src/api/c/image.cpp | 15 ++++++++-------
src/backend/cuda/image.cu | 2 ++
src/backend/opencl/image.cpp | 2 ++
4 files changed, 16 insertions(+), 7 deletions(-)
diff --git a/src/api/c/graphics_common.cpp b/src/api/c/graphics_common.cpp
index df0ecf9..fe68acb 100644
--- a/src/api/c/graphics_common.cpp
+++ b/src/api/c/graphics_common.cpp
@@ -27,6 +27,8 @@ INSTANTIATE_GET_FG_TYPE(int , fg::s32);
INSTANTIATE_GET_FG_TYPE(unsigned, fg::u32);
INSTANTIATE_GET_FG_TYPE(char, fg::s8);
INSTANTIATE_GET_FG_TYPE(unsigned char, fg::u8);
+INSTANTIATE_GET_FG_TYPE(ushort, fg::u16);
+INSTANTIATE_GET_FG_TYPE(short, fg::s16);
GLenum glErrorSkip(const char *msg, const char* file, int line)
{
@@ -78,6 +80,8 @@ size_t getTypeSize(GLenum type)
case GL_FLOAT: return sizeof(float);
case GL_INT: return sizeof(int );
case GL_UNSIGNED_INT: return sizeof(unsigned);
+ case GL_SHORT: return sizeof(short);
+ case GL_UNSIGNED_SHORT: return sizeof(ushort);
case GL_BYTE: return sizeof(char );
case GL_UNSIGNED_BYTE: return sizeof(unsigned char);
default: return sizeof(float);
diff --git a/src/api/c/image.cpp b/src/api/c/image.cpp
index 73dbbbc..ee2520c 100644
--- a/src/api/c/image.cpp
+++ b/src/api/c/image.cpp
@@ -40,8 +40,7 @@ Array<T> normalizePerType(const Array<T>& in)
{
Array<float> inFloat = cast<float, T>(in);
- Array<float> cnst = createValueArray<float>(in.dims(),
- std::numeric_limits<T>::max()/(255.0f+1.0e-6f));
+ Array<float> cnst = createValueArray<float>(in.dims(), 1.0 - 1.0e-6f);
Array<float> scaled = arithOp<float, af_mul_t>(inFloat, cnst, in.dims());
@@ -97,11 +96,13 @@ af_err af_draw_image(const af_window wind, const af_array in, const af_cell* con
fg::Image* image = NULL;
switch(type) {
- case f32: image = convert_and_copy_image<float>(in); break;
- case b8 : image = convert_and_copy_image<char >(in); break;
- case s32: image = convert_and_copy_image<int >(in); break;
- case u32: image = convert_and_copy_image<uint >(in); break;
- case u8 : image = convert_and_copy_image<uchar>(in); break;
+ case f32: image = convert_and_copy_image<float >(in); break;
+ case b8 : image = convert_and_copy_image<char >(in); break;
+ case s32: image = convert_and_copy_image<int >(in); break;
+ case u32: image = convert_and_copy_image<uint >(in); break;
+ case s16: image = convert_and_copy_image<short >(in); break;
+ case u16: image = convert_and_copy_image<ushort>(in); break;
+ case u8 : image = convert_and_copy_image<uchar >(in); break;
default: TYPE_ERROR(1, type);
}
diff --git a/src/backend/cuda/image.cu b/src/backend/cuda/image.cu
index 7370fb2..a99c792 100644
--- a/src/backend/cuda/image.cu
+++ b/src/backend/cuda/image.cu
@@ -53,6 +53,8 @@ INSTANTIATE(int)
INSTANTIATE(uint)
INSTANTIATE(uchar)
INSTANTIATE(char)
+INSTANTIATE(ushort)
+INSTANTIATE(short)
}
diff --git a/src/backend/opencl/image.cpp b/src/backend/opencl/image.cpp
index 1ee886b..1c7229b 100644
--- a/src/backend/opencl/image.cpp
+++ b/src/backend/opencl/image.cpp
@@ -69,6 +69,8 @@ INSTANTIATE(int)
INSTANTIATE(uint)
INSTANTIATE(uchar)
INSTANTIATE(char)
+INSTANTIATE(ushort)
+INSTANTIATE(short)
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/arrayfire.git
More information about the debian-science-commits
mailing list