code: function getUiInfo(depth, headers) {
  
          var infos = headers[headers.length - 1];
          var parents = self.axe.root.depth === depth ? [null] :
              headers[self.axe.root.depth - depth - 1].filter(function(p) {
                  return p.type !== uiheaders.HeaderType.SUB_TOTAL;
              });
  
          for (var pi = 0; pi < parents.length; pi++) {
  
              var parent = parents[pi];
              var parentDim = parent == null ? self.axe.root : parent.dim;
  
              for (var di = 0; di < parentDim.values.length; di++) {
  
                  var subvalue = parentDim.values[di];
                  var subdim = parentDim.subdimvals[subvalue];
  
                  var subtotalHeader;
                  if (!subdim.isLeaf && subdim.field.subTotal.visible) {
                      subtotalHeader = new uiheaders.header(axe.Type.COLUMNS, uiheaders.HeaderType.SUB_TOTAL, subdim, parent, self.dataFieldsCount());
                  } else {
                      subtotalHeader = null;
                  }
  
                  var header = new uiheaders.header(axe.Type.COLUMNS, null, subdim, parent, self.dataFieldsCount(), subtotalHeader);
                  infos.push(header);
  
                  if (!subdim.isLeaf && subdim.field.subTotal.visible) {
                      infos.push(subtotalHeader);
                  }
              }
          }
      }
docs: Fills the infos array given in argument with the dimension layout infos as column.
  @param  {orb.dimension}  dimension - the dimension to get ui info for
  @param  {int}  depth - the depth of the dimension that it's subdimensions will be returned
  @param  {object}  infos - array to fill with ui dimension info