docstr: Do further validation on this module's settings
  
  pipeline - this module's pipeline
  
  Check to make sure the output measurements aren't duplicated
  by prior modules.
docstr_tok: ["Do","further","validation","on","this","module","'s","settings","pipeline","-","this","module","'s","pipeline","Check","to","make","sure","the","output","measurements","are","n't","duplicated","by","prior","modules","."]
code: def validate_module(self, pipeline):
      """Do further validation on this module's settings
  
      pipeline - this module's pipeline
  
      Check to make sure the output measurements aren't duplicated
      by prior modules.
      """
      all_object_names = [
          operand.operand_objects.value
          for operand in self.operands
          if operand.object != IMAGE
      ]
      for module in pipeline.modules():
          if module.module_num == self.module_num:
              break
          for name in all_object_names:
              features = module.get_measurements(pipeline, name, C_MATH)
              if self.output_feature_name.value in features:
                  raise ValidationError(
                      'The feature, "%s", was already defined in module # %d'
                      % (
                          self.output_feature_name.value,
                          module.module_num,
                      ),
                      self.output_feature_name,
                  )
  
imports: import logging
  import numpy
  from cellprofiler_core.constants.measurement import COLTYPE_FLOAT
  from cellprofiler_core.constants.measurement import IMAGE
  from cellprofiler_core.constants.measurement import R_FIRST_IMAGE_NUMBER
  from cellprofiler_core.constants.measurement import R_FIRST_OBJECT_NUMBER
  from cellprofiler_core.constants.measurement import R_PARENT
  from cellprofiler_core.constants.measurement import R_SECOND_IMAGE_NUMBER
  from cellprofiler_core.constants.measurement import R_SECOND_OBJECT_NUMBER
  from cellprofiler_core.module import Module
  from cellprofiler_core.setting import Binary
  from cellprofiler_core.setting import Divider
  from cellprofiler_core.setting import Measurement
  from cellprofiler_core.setting import ValidationError
  from cellprofiler_core.setting.choice import Choice
  from cellprofiler_core.setting.subscriber import LabelSubscriber
  from cellprofiler_core.setting.text import Alphanumeric
  from cellprofiler_core.setting.text import Float
  from cellprofiler_core.setting.text import Integer
label_desc: Use image node_id 14 for calling the CalculateMath obj's underlying member method code with example usage: obj.validate_module(pipeline) without return types