class_docstr: Merged Batch Normalization and quantized (binary or ternary) Tanh layer.
  The mean, variance, beta, gamma parameters are folded into the threshold(s) at which the
  sign of the input flips after the quantized (binary or ternary) Tanh activation.
code: def initialize(self):
      inp = self.get_input_variable()
      shape = inp.shape
      dims = inp.dim_names
      if self.get_attr("quantize") == 2:
          self.add_output_variable(
              shape, dims, precision=XnorPrecisionType()
          )
      elif self.get_attr("quantize") == 3:
          self.add_output_variable(
              shape, dims, precision=IntegerPrecisionType(width=2)
          )
      else:
          raise Exception(
              "Unsupported quantize attribute for BatchNormalizationQuantizedTanh: {}".format(
                  self.get_attr("quantize")
              )
          )
  
file_path: hls4ml/hls4ml/backends/fpga/fpga_layers.py
imports: import numpy
  from hls4ml.model.attributes import Attribute, ConfigurableAttribute, TypeAttribute
  from hls4ml.model.layers import Conv1D, Conv2D, Layer
  from hls4ml.model.types import IntegerPrecisionType, XnorPrecisionType
label_desc: Use image node_id 1 for calling the BatchNormalizationQuantizedTanh obj's underlying member method code with example usage: obj.initialize() without return types