Example #1
0
import cppyy
import pathlib

__all__ = ['GCO']

_this_dir = pathlib.Path(__file__).parent

cppyy.add_include_path(str(_this_dir / 'include'))
cppyy.add_library_path(str(_this_dir))

# Include and load library
cppyy.include("GCoptimization.h")
cppyy.load_library("gco")

from cppyy.gbl import GCO
Example #2
0
]

system = platform.system()
if system == 'Linux':
    if (os.path.isdir("/usr/local/include/opencascade")):
        cppyy.add_include_path("/usr/local/include/opencascade")
    elif (os.path.isdir("/usr/include/opencascade")):
        cppyy.add_include_path("/usr/include/opencascade")
    base_dir = os.path.dirname(os.path.realpath(__file__))

    if (os.path.isdir("/usr/local/include/TopologicCore")):
        topologic_inc = "/usr/local/include/TopologicCore"
    elif (os.path.isdir("/usr/include/TopologicCore")):
        topologic_inc = "/usr/include/TopologicCore"
    if (os.path.isdir("/usr/local/lib")):
        cppyy.add_library_path("/usr/local/lib")
elif system == 'Windows':
    win_prefix = "C:/Topologic"
    topologic_inc = "{}/include".format(win_prefix)
    cppyy.add_include_path("{}/include/opencascade".format(win_prefix))

cppyy.add_include_path(topologic_inc)

for header in headers:
    cppyy.include(topologic_inc + "/" + header)

cppyy.load_library("TopologicCore")

from cppyy.gbl import TopologicCore
from cppyy.gbl import TopologicUtilities
Aperture = TopologicCore.Aperture
Example #3
0

cppyy.py.add_pythonization(pythonize_topologic_printing, 'TopologicCore')

system = platform.system()
if system != 'Windows':
    if (os.path.isdir("/usr/local/include/opencascade")):
        cppyy.add_include_path("/usr/local/include/opencascade")
    elif (os.path.isdir("/usr/include/opencascade")):
        cppyy.add_include_path("/usr/include/opencascade")
    if (os.path.isdir("/usr/local/include/TopologicCore")):
        topologic_inc = "/usr/local/include/TopologicCore"
    elif (os.path.isdir("/usr/include/TopologicCore")):
        topologic_inc = "/usr/include/TopologicCore"
    if (os.path.isdir("/usr/local/lib")):
        cppyy.add_library_path("/usr/local/lib")
else:
    win_prefix = "E:/Documents/Projects/TopologicFinal/topologic"
    topologic_inc = "{}/TopologicCore/include".format(win_prefix)
    opencascade_prefix = "C:/OpenCASCADE-7.4.0-vc14-64"
    cppyy.add_include_path(
        "{}/opencascade-7.4.0/inc".format(opencascade_prefix))
    cppyy.add_library_path("{}/output/x64/Release".format(win_prefix))
    cppyy.add_library_path(
        "{}/opencascade-7.4.0/win64/vc14/bin".format(opencascade_prefix))

cppyy.add_include_path(topologic_inc)

cppyy.load_library("TopologicCore")

for header in headers:
Example #4
0
import cppyy

from inet.common.util import *

# setup omnetpp include path
cppyy.add_include_path(get_workspace_path("omnetpp/include"))
cppyy.add_include_path(get_workspace_path("omnetpp/src"))

# setup omnetpp library path
cppyy.add_library_path(get_workspace_path("omnetpp/lib"))

# load omnetpp libraries
cppyy.load_library("liboppcmdenv")
cppyy.load_library("liboppcommon")
cppyy.load_library("liboppenvir")
cppyy.load_library("liboppeventlog")
cppyy.load_library("libopplayout")
cppyy.load_library("liboppnedxml")
#cppyy.load_library("liboppqtenv-osg")
#cppyy.load_library("liboppqtenv")
#cppyy.load_library("liboppscave")
cppyy.load_library("liboppsim")

# include omnetpp header files
cppyy.include("omnetpp.h")
cppyy.include("cmdenv/cmdenv.h")
cppyy.include("envir/inifilereader.h")
cppyy.include("envir/sectionbasedconfig.h")

# setup omnetpp namespace
from cppyy.gbl import omnetpp
Example #5
0
import cppyy

from inet.common.util import *

# setup inet include path
cppyy.add_include_path(get_workspace_path("inet/src"))

# setup inet library path
cppyy.add_library_path(get_workspace_path("inet/src"))

# load inet library
cppyy.load_library("libINET")

# setup inet namespace
# from cppyy.gbl import inet
Example #6
0
cppSourcePath = sourceDir+"/Mandelbrot.cpp"
shaderSourcePath = sourceDir+"/Mandelbrot.comp.glsl"
shaderSPIRVPath = sourceDir+"/Mandelbrot.spv"

## shader compilation
print("compiling glsl...")
compileCommand = glslCompilerPath + " -V " + shaderSourcePath + " -o " + shaderSPIRVPath
subprocess.run(compileCommand.split())

# cpp compilation
print("compiling cpp...")
mandelbrotCppSource = open(cppSourcePath).read()
namepaceTag = "cppyy_"+str(time.time()).replace(".", "_")
mandelbrotCppSource = mandelbrotCppSource.replace("%%_NAMESPACE_TAG_%%", namepaceTag) 
cppyy.add_include_path(vulkanSDKIncludeDir)
cppyy.add_library_path(vulkanSDKLibDir)
cppyy.load_library(vulkanSharedLibrary)
cppyy.cppdef(mandelbrotCppSource)

# import and use the code
print("running...")
print("import...")
exec("from cppyy.gbl import " + namepaceTag)
namespace = eval("cppyy.gbl." + namepaceTag)
print("instance...")
vudo = namespace.MandelbrotVudo()
vudo.shaderSPIRVPath = shaderSPIRVPath
# TODO: put this in a thread 
print("run...")
time = timeit.timeit(vudo.run, number=1)
print(f"Time for vudo.run is: {time}")
Example #7
0
excluded_endpoints = [
    "/api/region", "/css/", "/js/", "/static/", "/invicro.ico", "/favicon.ico",
    "/configuration.json"
]

app = Flask(__name__)
cors = CORS(app)
app.config['CORS_HEADERS'] = 'Content-Type'

# Define Cpp include/libs paths
app_path = '/app'
cppyy.add_include_path(os.path.join(app_path, 'dependencies', 'include'))
cppyy.add_include_path(os.path.join(app_path, 'libs', 'mld_loader', 'include'))
cppyy.add_include_path(
    os.path.join(app_path, 'libs', 'region_loader', 'include'))
cppyy.add_library_path(os.path.join(app_path, 'dependencies', 'lib'))
cppyy.add_library_path(os.path.join(app_path, 'libs', 'mld_loader', 'lib'))
cppyy.add_library_path(os.path.join(app_path, 'libs', 'region_loader', 'lib'))

# Import Cpp libraries methods
cppyy.include("mld_loader.h")
cppyy.include("region_loader.h")
cppyy.load_library("mld_loader")
cppyy.load_library("region_loader")
from cppyy.gbl import load_whole_mld, load_region, get_dimensions, free_memory, alloc_memory, load_thumbnail, alloc_memory_dim, free_memory_dim, get_thumbnail_dimensions, alloc_memory_v2, get_value

tile = 256

# serving frontend