# Autogenerated wrapper script for FastJet_jll for armv7l-linux-gnueabihf-cxx11
export libClusteringVetoPlugin, libConstituentSubtractor, libEnergyCorrelator, libFlavorCone, libGenericSubtractor, libJetCleanser, libJetFFMoments, libJetsWithoutJets, libLundPlane, libNsubjettiness, libQCDAwarePlugin, libRecursiveTools, libScJet, libSoftKiller, libSubjetCounting, libValenciaPlugin, libVariableR, libfastjet, libfastjetplugins, libfastjettools, libsiscone, libsiscone_spherical

## Global variables
PATH = ""
LIBPATH = ""
LIBPATH_env = "LD_LIBRARY_PATH"
LIBPATH_default = ""

# Relative path to `libClusteringVetoPlugin`
const libClusteringVetoPlugin_splitpath = ["lib", "libClusteringVetoPlugin.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libClusteringVetoPlugin_path = ""

# libClusteringVetoPlugin-specific global declaration
# This will be filled out by __init__()
libClusteringVetoPlugin_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libClusteringVetoPlugin = "libClusteringVetoPlugin.so"


# Relative path to `libConstituentSubtractor`
const libConstituentSubtractor_splitpath = ["lib", "libConstituentSubtractor.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libConstituentSubtractor_path = ""

# libConstituentSubtractor-specific global declaration
# This will be filled out by __init__()
libConstituentSubtractor_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libConstituentSubtractor = "libConstituentSubtractor.so"


# Relative path to `libEnergyCorrelator`
const libEnergyCorrelator_splitpath = ["lib", "libEnergyCorrelator.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libEnergyCorrelator_path = ""

# libEnergyCorrelator-specific global declaration
# This will be filled out by __init__()
libEnergyCorrelator_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libEnergyCorrelator = "libEnergyCorrelator.so"


# Relative path to `libFlavorCone`
const libFlavorCone_splitpath = ["lib", "libFlavorCone.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libFlavorCone_path = ""

# libFlavorCone-specific global declaration
# This will be filled out by __init__()
libFlavorCone_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libFlavorCone = "libFlavorCone.so"


# Relative path to `libGenericSubtractor`
const libGenericSubtractor_splitpath = ["lib", "libGenericSubtractor.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libGenericSubtractor_path = ""

# libGenericSubtractor-specific global declaration
# This will be filled out by __init__()
libGenericSubtractor_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libGenericSubtractor = "libGenericSubtractor.so"


# Relative path to `libJetCleanser`
const libJetCleanser_splitpath = ["lib", "libJetCleanser.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libJetCleanser_path = ""

# libJetCleanser-specific global declaration
# This will be filled out by __init__()
libJetCleanser_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libJetCleanser = "libJetCleanser.so"


# Relative path to `libJetFFMoments`
const libJetFFMoments_splitpath = ["lib", "libJetFFMoments.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libJetFFMoments_path = ""

# libJetFFMoments-specific global declaration
# This will be filled out by __init__()
libJetFFMoments_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libJetFFMoments = "libJetFFMoments.so"


# Relative path to `libJetsWithoutJets`
const libJetsWithoutJets_splitpath = ["lib", "libJetsWithoutJets.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libJetsWithoutJets_path = ""

# libJetsWithoutJets-specific global declaration
# This will be filled out by __init__()
libJetsWithoutJets_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libJetsWithoutJets = "libJetsWithoutJets.so"


# Relative path to `libLundPlane`
const libLundPlane_splitpath = ["lib", "libLundPlane.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libLundPlane_path = ""

# libLundPlane-specific global declaration
# This will be filled out by __init__()
libLundPlane_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libLundPlane = "libLundPlane.so"


# Relative path to `libNsubjettiness`
const libNsubjettiness_splitpath = ["lib", "libNsubjettiness.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libNsubjettiness_path = ""

# libNsubjettiness-specific global declaration
# This will be filled out by __init__()
libNsubjettiness_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libNsubjettiness = "libNsubjettiness.so"


# Relative path to `libQCDAwarePlugin`
const libQCDAwarePlugin_splitpath = ["lib", "libQCDAwarePlugin.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libQCDAwarePlugin_path = ""

# libQCDAwarePlugin-specific global declaration
# This will be filled out by __init__()
libQCDAwarePlugin_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libQCDAwarePlugin = "libQCDAwarePlugin.so"


# Relative path to `libRecursiveTools`
const libRecursiveTools_splitpath = ["lib", "libRecursiveTools.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libRecursiveTools_path = ""

# libRecursiveTools-specific global declaration
# This will be filled out by __init__()
libRecursiveTools_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libRecursiveTools = "libRecursiveTools.so"


# Relative path to `libScJet`
const libScJet_splitpath = ["lib", "libScJet.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libScJet_path = ""

# libScJet-specific global declaration
# This will be filled out by __init__()
libScJet_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libScJet = "libScJet.so"


# Relative path to `libSoftKiller`
const libSoftKiller_splitpath = ["lib", "libSoftKiller.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libSoftKiller_path = ""

# libSoftKiller-specific global declaration
# This will be filled out by __init__()
libSoftKiller_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libSoftKiller = "libSoftKiller.so"


# Relative path to `libSubjetCounting`
const libSubjetCounting_splitpath = ["lib", "libSubjetCounting.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libSubjetCounting_path = ""

# libSubjetCounting-specific global declaration
# This will be filled out by __init__()
libSubjetCounting_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libSubjetCounting = "libSubjetCounting.so"


# Relative path to `libValenciaPlugin`
const libValenciaPlugin_splitpath = ["lib", "libValenciaPlugin.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libValenciaPlugin_path = ""

# libValenciaPlugin-specific global declaration
# This will be filled out by __init__()
libValenciaPlugin_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libValenciaPlugin = "libValenciaPlugin.so"


# Relative path to `libVariableR`
const libVariableR_splitpath = ["lib", "libVariableR.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libVariableR_path = ""

# libVariableR-specific global declaration
# This will be filled out by __init__()
libVariableR_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libVariableR = "libVariableR.so"


# Relative path to `libfastjet`
const libfastjet_splitpath = ["lib", "libfastjet.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libfastjet_path = ""

# libfastjet-specific global declaration
# This will be filled out by __init__()
libfastjet_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libfastjet = "libfastjet.so.0"


# Relative path to `libfastjetplugins`
const libfastjetplugins_splitpath = ["lib", "libfastjetplugins.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libfastjetplugins_path = ""

# libfastjetplugins-specific global declaration
# This will be filled out by __init__()
libfastjetplugins_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libfastjetplugins = "libfastjetplugins.so.0"


# Relative path to `libfastjettools`
const libfastjettools_splitpath = ["lib", "libfastjettools.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libfastjettools_path = ""

# libfastjettools-specific global declaration
# This will be filled out by __init__()
libfastjettools_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libfastjettools = "libfastjettools.so.0"


# Relative path to `libsiscone`
const libsiscone_splitpath = ["lib", "libsiscone.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libsiscone_path = ""

# libsiscone-specific global declaration
# This will be filled out by __init__()
libsiscone_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libsiscone = "libsiscone.so.0"


# Relative path to `libsiscone_spherical`
const libsiscone_spherical_splitpath = ["lib", "libsiscone_spherical.so"]

# This will be filled out by __init__() for all products, as it must be done at runtime
libsiscone_spherical_path = ""

# libsiscone_spherical-specific global declaration
# This will be filled out by __init__()
libsiscone_spherical_handle = C_NULL

# This must be `const` so that we can use it with `ccall()`
const libsiscone_spherical = "libsiscone_spherical.so.0"


# Inform that the wrapper is available for this platform
wrapper_available = true

"""
Open all libraries
"""
function __init__()
    # This either calls `@artifact_str()`, or returns a constant string if we're overridden.
    global artifact_dir = find_artifact_dir()

    global PATH_list, LIBPATH_list
    global libClusteringVetoPlugin_path = normpath(joinpath(artifact_dir, libClusteringVetoPlugin_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libClusteringVetoPlugin_handle = dlopen(libClusteringVetoPlugin_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libClusteringVetoPlugin_path))

    global libConstituentSubtractor_path = normpath(joinpath(artifact_dir, libConstituentSubtractor_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libConstituentSubtractor_handle = dlopen(libConstituentSubtractor_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libConstituentSubtractor_path))

    global libEnergyCorrelator_path = normpath(joinpath(artifact_dir, libEnergyCorrelator_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libEnergyCorrelator_handle = dlopen(libEnergyCorrelator_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libEnergyCorrelator_path))

    global libFlavorCone_path = normpath(joinpath(artifact_dir, libFlavorCone_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libFlavorCone_handle = dlopen(libFlavorCone_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libFlavorCone_path))

    global libGenericSubtractor_path = normpath(joinpath(artifact_dir, libGenericSubtractor_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libGenericSubtractor_handle = dlopen(libGenericSubtractor_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libGenericSubtractor_path))

    global libJetCleanser_path = normpath(joinpath(artifact_dir, libJetCleanser_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libJetCleanser_handle = dlopen(libJetCleanser_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libJetCleanser_path))

    global libJetFFMoments_path = normpath(joinpath(artifact_dir, libJetFFMoments_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libJetFFMoments_handle = dlopen(libJetFFMoments_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libJetFFMoments_path))

    global libJetsWithoutJets_path = normpath(joinpath(artifact_dir, libJetsWithoutJets_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libJetsWithoutJets_handle = dlopen(libJetsWithoutJets_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libJetsWithoutJets_path))

    global libLundPlane_path = normpath(joinpath(artifact_dir, libLundPlane_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libLundPlane_handle = dlopen(libLundPlane_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libLundPlane_path))

    global libNsubjettiness_path = normpath(joinpath(artifact_dir, libNsubjettiness_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libNsubjettiness_handle = dlopen(libNsubjettiness_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libNsubjettiness_path))

    global libQCDAwarePlugin_path = normpath(joinpath(artifact_dir, libQCDAwarePlugin_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libQCDAwarePlugin_handle = dlopen(libQCDAwarePlugin_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libQCDAwarePlugin_path))

    global libRecursiveTools_path = normpath(joinpath(artifact_dir, libRecursiveTools_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libRecursiveTools_handle = dlopen(libRecursiveTools_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libRecursiveTools_path))

    global libScJet_path = normpath(joinpath(artifact_dir, libScJet_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libScJet_handle = dlopen(libScJet_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libScJet_path))

    global libSoftKiller_path = normpath(joinpath(artifact_dir, libSoftKiller_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libSoftKiller_handle = dlopen(libSoftKiller_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libSoftKiller_path))

    global libSubjetCounting_path = normpath(joinpath(artifact_dir, libSubjetCounting_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libSubjetCounting_handle = dlopen(libSubjetCounting_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libSubjetCounting_path))

    global libValenciaPlugin_path = normpath(joinpath(artifact_dir, libValenciaPlugin_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libValenciaPlugin_handle = dlopen(libValenciaPlugin_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libValenciaPlugin_path))

    global libVariableR_path = normpath(joinpath(artifact_dir, libVariableR_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libVariableR_handle = dlopen(libVariableR_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libVariableR_path))

    global libfastjet_path = normpath(joinpath(artifact_dir, libfastjet_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libfastjet_handle = dlopen(libfastjet_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libfastjet_path))

    global libfastjetplugins_path = normpath(joinpath(artifact_dir, libfastjetplugins_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libfastjetplugins_handle = dlopen(libfastjetplugins_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libfastjetplugins_path))

    global libfastjettools_path = normpath(joinpath(artifact_dir, libfastjettools_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libfastjettools_handle = dlopen(libfastjettools_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libfastjettools_path))

    global libsiscone_path = normpath(joinpath(artifact_dir, libsiscone_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libsiscone_handle = dlopen(libsiscone_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libsiscone_path))

    global libsiscone_spherical_path = normpath(joinpath(artifact_dir, libsiscone_spherical_splitpath...))

    # Manually `dlopen()` this right now so that future invocations
    # of `ccall` with its `SONAME` will find this path immediately.
    global libsiscone_spherical_handle = dlopen(libsiscone_spherical_path, RTLD_LAZY | RTLD_DEEPBIND)
    push!(LIBPATH_list, dirname(libsiscone_spherical_path))

    # Filter out duplicate and empty entries in our PATH and LIBPATH entries
    filter!(!isempty, unique!(PATH_list))
    filter!(!isempty, unique!(LIBPATH_list))
    global PATH = join(PATH_list, ':')
    global LIBPATH = join(vcat(LIBPATH_list, [joinpath(Sys.BINDIR, Base.LIBDIR, "julia"), joinpath(Sys.BINDIR, Base.LIBDIR)]), ':')

    
end  # __init__()
