def export(target_folder, source_folders = None, class_type ='all', raise_errors = False):
    """
    exports the existing scripts/instruments (future: probes) into folder as .b26 files
    Args:
        target_folder: target location of created .b26 script files
        source_folder: singel path or list of paths that contains the location of python script files can also be just the name of a module
        class_type: string, one of the 4 following options
            -probes (exports probes) --not implemented yet--
            -scripts (exports scripts)
            -instruments (exports instruments)
            -all (exports instruments, scripts and probes)
        target_folder: target folder whereb   .b26 files are created
    Returns:

    """
    if class_type not in ('all', 'scripts', 'instruments', 'probes'):
        print('unknown type to export')
        return

    if not os.path.isdir(target_folder):
        try:
            os.mkdir(target_folder)
        except:
            print((target_folder, ' is invalid target folder'))
            target_folder = None

    if target_folder is not None:
        if source_folders is None:
            module_list = [os.path.dirname(os.path.dirname(inspect.getfile(inspect.currentframe())))]
        elif isinstance(source_folders, str):
            module_list = [source_folders]
        elif isinstance(source_folders, list):
            module_list = source_folders
        else:
            raise TypeError('unknown type for source_folders')

        for path_to_module in module_list:
            if class_type in ('all', 'scripts'):
                export_default_scripts(target_folder, source_folder=path_to_module, raise_errors=raise_errors)
            if class_type in ('all', 'instruments'):
                export_default_instruments(target_folder, path_to_module,  raise_errors=raise_errors)
            if class_type in ('all', 'probes'):
                print('WARNING: probes currently not supported')
def export ( target_folder , source_folders = None , class_type = 'all' , raise_errors = False ) : if class_type not in ( 'all' , 'scripts' , 'instruments' , 'probes' ) : print ( 'unknown type to export' ) return if not os . path . isdir ( target_folder ) : try : os . mkdir ( target_folder ) except : print ( ( target_folder , ' is invalid target folder' ) ) target_folder = None if target_folder is not None : if source_folders is None : module_list = [ os . path . dirname ( os . path . dirname ( inspect . getfile ( inspect . currentframe ( ) ) ) ) ] elif isinstance ( source_folders , str ) : module_list = [ source_folders ] elif isinstance ( source_folders , list ) : module_list = source_folders else : raise TypeError ( 'unknown type for source_folders' ) for path_to_module in module_list : if class_type in ( 'all' , 'scripts' ) : export_default_scripts ( target_folder , source_folder = path_to_module , raise_errors = raise_errors ) if class_type in ( 'all' , 'instruments' ) : export_default_instruments ( target_folder , path_to_module , raise_errors = raise_errors ) if class_type in ( 'all' , 'probes' ) : print ( 'WARNING: probes currently not supported' )
exports the existing scripts/instruments (future: probes) into folder as .b26 files
    Args:
        target_folder: target location of created .b26 script files
        source_folder: singel path or list of paths that contains the location of python script files can also be just the name of a module
        class_type: string, one of the 4 following options
            -probes (exports probes) --not implemented yet--
            -scripts (exports scripts)
            -instruments (exports instruments)
            -all (exports instruments, scripts and probes)
        target_folder: target folder whereb   .b26 files are created
    Returns: