Source code for wofry.beamline.decorators

"""
Abstract decorator classes for wofry beamline light sources and optical elements.
"""

from wofry.propagator.wavefront import Wavefront

[docs]class LightSourceDecorator():
[docs] def get_wavefront(self, wavefront_parameters): raise NotImplementedError("This method should be specialized by specific implementors" + "\n\nreturns " + Wavefront.__module__ + "." + Wavefront.__name__)
[docs]class OpticalElementDecorator(object): def __init__(self): super().__init__()
[docs] def applyOpticalElement(self, wavefront=None, parameters=None, element_index=None): raise NotImplementedError("This method should be specialized by specific implementors" + "\n\naccepts " + Wavefront.__module__ + "." + Wavefront.__name__ + "\nreturns " + Wavefront.__module__ + "." + Wavefront.__name__)