class_docstr: Implements both the Local Spatial Encoding and Attentive Pooling blocks from
  RandLA-Net: Efficient Semantic Segmentation of Large-Scale Point Clouds
  https://arxiv.org/pdf/1911.11236
code: def forward(self, x, pos, edge_index):
      x = self.propagate(edge_index, x=x, pos=pos)
      return x
  
imports: import torch
  import torch.nn.functional
  from torch_geometric.nn import MessagePassing
  from torch_points3d.core.spatial_ops import *
  from torch_points3d.core.base_conv.message_passing import *
label_desc: Use image node_id 2 for calling the RandlaKernel obj's underlying member method code with example usage: obj.forward(x, pos, edge_index) and returns: x