docstr: Return a sequence describing the measurement columns needed by this module
docstr_tok: ["Return","a","sequence","describing","the","measurement","columns","needed","by","this","module"]
code: def get_measurement_columns(self, pipeline):
      """Return a sequence describing the measurement columns needed by this module"""
      cols = []
      for channel in self.channels:
          name = channel.cpimage_name.value
          cols += [
              (
                  cpmeas.IMAGE,
                  "_".join((M_IMAGE_NAME, name)),
                  cpmeas.COLTYPE_VARCHAR_FORMAT % 255,
              ),
              (
                  cpmeas.IMAGE,
                  "_".join((M_IMAGE_ID, name)),
                  cpmeas.COLTYPE_INTEGER,
              ),
              (
                  cpmeas.IMAGE,
                  "_".join((M_PIXELS_ID, name)),
                  cpmeas.COLTYPE_INTEGER,
              ),
              (
                  cpmeas.IMAGE,
                  "_".join((M_Z, name)),
                  cpmeas.COLTYPE_INTEGER,
              ),
              (
                  cpmeas.IMAGE,
                  "_".join((M_C, name)),
                  cpmeas.COLTYPE_INTEGER,
              ),
              (
                  cpmeas.IMAGE,
                  "_".join((M_T, name)),
                  cpmeas.COLTYPE_INTEGER,
              ),
          ]
          if self.omero_object == MS_DATASET:
              cols += [
                  (
                      cpmeas.IMAGE,
                      "_".join((M_DATASET_NAME, name)),
                      cpmeas.COLTYPE_VARCHAR_FORMAT % 255,
                  ),
                  (
                      cpmeas.IMAGE,
                      "_".join((M_DATASET_ID, name)),
                      cpmeas.COLTYPE_INTEGER,
                  ),
              ]
          elif self.omero_object == MS_PLATE:
              cols += [
                  (
                      cpmeas.IMAGE,
                      "_".join((M_PLATE_NAME, name)),
                      cpmeas.COLTYPE_VARCHAR_FORMAT % 255,
                  ),
                  (
                      cpmeas.IMAGE,
                      "_".join((M_PLATE_ID, name)),
                      cpmeas.COLTYPE_INTEGER,
                  ),
                  (
                      cpmeas.IMAGE,
                      "_".join((M_WELL_ROW, name)),
                      cpmeas.COLTYPE_INTEGER,
                  ),
                  (
                      cpmeas.IMAGE,
                      "_".join((M_WELL_COLUMN, name)),
                      cpmeas.COLTYPE_INTEGER,
                  ),
                  (
                      cpmeas.IMAGE,
                      "_".join((M_WELL_ID, name)),
                      cpmeas.COLTYPE_INTEGER,
                  ),
              ]
      return cols
  
imports: import traceback
  import numpy
  import wx
  import cellprofiler_core.image
  import cellprofiler_core.module
  import cellprofiler_core.measurement
  import cellprofiler_core.preferences
  import cellprofiler_core.setting
  from cellprofiler_core.modules import default_cpimage_name
  import omero
  from omero.rtypes import rlong
  from omero.rtypes import rint
  from omero_version import omero_version
label_desc: Use image node_id 22 for calling the OmeroLoadImages obj's underlying member method code with example usage: obj.get_measurement_columns(pipeline) and returns: cols