Herror ::tuple_lsh (
    const HTuple &T,
    const HTuple &Shift,
    long *Lsh
)
Herror ::tuple_lsh (
    const HTuple &T,
    const HTuple &Shift,
    HTuple *Lsh
)

Shift a tuple bitwise to the left.

::tuple_lsh shifts the tuple T bitwise to the left by Shift places. If no overflow occurs, this operation is equivalent to a multiplication by 2^Shift. If T is negative, the result depends on the hardware. If Shift is negative or larger than 32, the result is undefined. If both tuples have the same length the corresponding elements of both tuples are shifted. Otherwise, either T or Shift must have length 1. In this case, the operation is performed for each element of the longer tuple with the single element of the other tuple. The input tuples must contain only integer numbers.


Parameters

T (input_control)
integer(-array) -> HTuple.long
Input tuple.

Shift (input_control)
integer(-array) -> HTuple.long
Number of places to shift the input tuple.

Lsh (output_control)
integer(-array) -> (HTuple.) long *
Shifted input tuple.


Alternatives

::tuple_mult


See also

::tuple_rsh


Module

Operators not requiring licensing



Copyright © 1996-2002 MVTec Software GmbH