bitand~
Bitwise and-operation of floating point signals
Description
Use the bitand~ object to perform a bitwise intersection (a bitwise "and") on two incoming floating-point signals as either raw 32-bit data or as integer values. The output is a floating-point signal composed of those bits which are 1 in both numbers.
Arguments
bitmask[int]
optional
Sets the bitmask to be used by the bitand~ object. The default is . An integer value can be used as a bitmask regardless of the mode; the binary representation of this integer is the bitmask.
operational-mode[int]
optional
Specifies whether the floating-point signal or floating-point values will be processed as raw 32-bit floating-point values or converted to integer values for the bitwise operation. The modes of operation are listed below:
0: Treat both floating-point signal inputs as raw 32-bit values (default).
1: Convert both floating-point signal inputs to integer values.
2: Treat the floating-point signal in the left inlet as a raw 32-bit value
3: Convert the floating-point signal in the left inlet to an integer and treat the right input as a raw 32-bit value.
Attributes
mode[int]
Specifies whether the floating-point signal or floating-point value will be processed as a raw 32-bit floating-point value or converted to an integer value for bit inversion. The modes of operation are listed below.
0 - Treat both floating-point signal inputs as raw 32-bit values (default).
1 - Convert both floating-point signal inputs to integer values.
2 - Treat the floating-point signal in the left inlet as a raw 32-bit value and treat the value in the right inlet as an integer.
3 - Convert the floating-point signal in the left inlet to an integer and treat the right input as a raw 32-bit value.
Note: If you convert the floating-point signal input to an integer and then convert it back, the resulting floating-point value will retain only 24 bits of integer resolution.
Common Box Attributes
annotation[symbol]
Sets the text that will be displayed in the Clue window when the user moves the mouse over the object.
background[int]: 0
Adds or removes the object from the patcher's background layer.
adds the object to the background layer, removes it. Objects in the background layer are shown behind all objects in the default foreground layer.
color[4 floats]
Sets the color for the object box outline.
fontface[int]
Sets the type style used by the object. The options are:
plain
bold
italic
bold italic
Possible values:
0 = 'regular'
1 = 'bold'
2 = 'italic'
3 = 'bold italic'
fontname[symbol]
Sets the object's font.
fontsize[float]
Sets the object's font size (in points).
Possible values:
'8'
'9'
'10'
'11'
'12'
'13'
'14'
'16'
'18'
'20'
'24'
'30'
'36'
'48'
'64'
'72'
hint[symbol]
Sets the text that will be displayed in as a pop-up hint when the user moves the mouse over the object in a locked patcher.
ignoreclick[int]: 0
Toggles whether an object ignores mouse clicks in a locked patcher.
jspainterfile[symbol]
You can override the default appearance of a user interface object by assigning a JavaScript file with code for painting the object. The file must be in the search path.
patching_rect[4 floats]: 0. 0. 100. 0.
Sets the position and size of the object in the patcher window.
position[2 floats]
write-only
Sets the object's x and y position in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its size unchanged.
presentation[int]: 0
Sets whether an object belongs to the patcher's presentation.
presentation_rect[4 floats]: 0. 0. 0. 0.
Sets the x and y position and width and height of the object in the patcher's presentation, leaving its patching position unchanged.
rect[4 floats]
write-only
Sets the x and y position and width and height of the object in both patching and presentation modes (if the object belongs to its patcher's presentation).
size[2 floats]
write-only
Sets the object's width and height in both patching and presentation modes (if the object belongs to its patcher's presentation), leaving its position unchanged.
textcolor[4 floats]
Sets the color for the object's text in RGBA format.
textjustification[int]
Sets the justification for the object's text.
Possible values:
0 = 'left'
1 = 'center'
2 = 'right'
varname[symbol]
Sets the patcher's scripting name, which can be used to address the object by name in pattr, scripting messages to thispatcher, and the js object.
Messages
int
In right inlet: An integer value can be used as a bitmask when supplied to the right inlet of the bitand~ object, provided that the proper mode is set.
- bitmask
[int]
float
In right inlet: A floating-point value can be used as a bitmask when supplied to the right inlet of the bitand~ object, provided that the proper mode is set.
- bitmask
[float]
bits
In left inlet: The word bitand~. Alternately, a bitmask value can be set by using an int value in the right inlet.
, followed by a list containing 32 ones or zeros, specifies a bitmask to be used by- bitmask
[list]
signal
In left inlet: The floating-point signal is compared, in binary form, with the floating-point signal in the right inlet. The signal can be treated as either a floating-point signal or as an integer.
In right inlet: The floating-point signal to be compared with the signal in the left inlet. The signal can be treated as either a floating-point signal or as an integer.
The raw floating-point signal bit values are expressed in the following form:
<1 sign bit> <8 exponent bits> <23 mantissa bits>
Output
signal
The two floating-point signals or ints received in the inlets are compared, one bit at a time. If a bit is
in both numbers, it will be in the output number, otherwise it will be in the output floating-point signal.See Also
Name | Description |
---|---|
bitshift~ | Bit shifting for floating point signals |
bitor~ | Bitwise or-operation of floating point signals |
bitxor~ | Bitwise exclusive-or-operation of floating point signals |
bitnot~ | Bitwise inversion of a floating point signal |