#include "HxImageRep.h"
Go to the source code of this file.
Functions | |
| HxImageRep L_HXIMAGEREP | HxLeftShiftVal (HxImageRep im, HxValue val) |
| Left shift. More... | |
|
||||||||||||
|
Left shift. The function performs left shift (see Pixels) on all pixels in the input image via a binary pixel operation (see Images). Implementation specifics : The pixel functor : HxBpoLeftShift. The image functor instantiator : HxInstantiatorLeftShiftV.
00013 {
00014 HxString fname("HxLeftShiftVal");
00015
00016 if (im.isNull())
00017 {
00018 HxGlobalError::instance()->reportError(fname, im.name(), "null image", HxGlobalError::HX_GE_INVALID);
00019 return HxImageRep();
00020 }
00021
00022 if (im.signature().pixelDimensionality() != 1)
00023 {
00024 HxGlobalError::instance()->reportError(fname, "logical operators are only valid for scalar images", HxGlobalError::HX_GE_INVALID);
00025 return HxImageRep();
00026 }
00027
00028 if (im.signature().pixelType() != INT_VALUE)
00029 {
00030 HxGlobalError::instance()->reportError(fname, "logical operators are only valid on integer images", HxGlobalError::HX_GE_INVALID);
00031 return HxImageRep();
00032 }
00033
00034 if (val.tag() != HxValue::SI)
00035 {
00036 HxGlobalError::instance()->reportError(fname, "only scalar integer value supported", HxGlobalError::HX_GE_INVALID);
00037 return HxImageRep();
00038 }
00039
00040
00041 return im.binaryPixOp(val, "leftShift");
00042 }
|
1.2.12 written by Dimitri van Heesch,
© 1997-2001