def apply(self, sample: Sample) -> Optional[Sample]: # Apply the complete list of data processors # Non valid samples return None if sample.meta is None: sample = sample.new_meta({}) if not self.is_valid_sample(sample): return None for p in self.processors: sample = p(sample) if not self.is_valid_sample(sample): return None return sample
def apply_on_sample(self, sample: Sample) -> Sample: if sample.meta is None: sample = sample.new_meta({}) return self.apply(sample.copy())