def init():
	pass
def deinit():
	pass
def get_num_alived_objects():
	pass
def get_version():
	return "python dummy version"
def dev_mode():
	return False

def log_error(msg):
	print(f"Error: {msg}")

def log_info(msg):
	print(f"Error: {msg}")

def log_warning(msg):
	print(f"Error: {msg}")

def log_debug(msg):
	print(f"Error: {msg}")


class Model():
	def __init__(self, *args, **kwargs):
		pass

	def getRootTransform(self, *args, **kwargs):
		pass

	def setBBox(self, *args, **kwargs):
		pass

	def setUserBox(self, *args, **kwargs):
		pass

	def setLightBox(self, *args, **kwargs):
		pass

	def save(self, *args, **kwargs):
		pass

	def addRenderNode(self, *args, **kwargs):
		pass

	def addSegmentsNode(self, *args, **kwargs):
		pass

	def addShellNode(self, *args, **kwargs):
		pass

	def addConnector(self, *args, **kwargs):
		pass

	def addLight(self, *args, **kwargs):
		pass

	def getName(self, *args, **kwargs):
		pass

class Node():
	def __init__(self, *args, **kwargs):
		pass

	def getName(self, *args, **kwargs):
		pass

	def addChild(self, *args, **kwargs):
		pass

class Transform(Node, std::shared_ptr<pyedm::Transform>):
	def __init__(self, *args, **kwargs):
		pass

	def setMatrix(self, *args, **kwargs):
		pass

class Lod(Node, std::shared_ptr<pyedm::Lod>):
	def __init__(self, *args, **kwargs):
		pass

class NumberRoot(Node, std::shared_ptr<pyedm::NumberRoot>):
	def __init__(self, *args, **kwargs):
		pass

	def setControls(self, *args, **kwargs):
		pass

class VisibilityNode(Node, std::shared_ptr<pyedm::VisibilityNode>):
	def __init__(self, *args, **kwargs):
		pass

	def setArguments(self, *args, **kwargs):
		pass

class AnimationNode(Node, std::shared_ptr<pyedm::AnimationNode>):
	def __init__(self, *args, **kwargs):
		pass

	def setBaseMatrix(self, *args, **kwargs):
		pass

	def setPositionAnimation(self, *args, **kwargs):
		pass

	def setRotationAnimation(self, *args, **kwargs):
		pass

	def setScaleAnimation(self, *args, **kwargs):
		pass

	def setBasePosition(self, *args, **kwargs):
		pass

	def setBaseRotation(self, *args, **kwargs):
		pass

	def setBaseScale(self, *args, **kwargs):
		pass

class IBlock():
	def __init__(self, *args, **kwargs):
		pass

	def getTypeName(self, *args, **kwargs):
		pass

class BaseBlock(IBlock, std::shared_ptr<pyedm::BaseBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setNormals(self, *args, **kwargs):
		pass

	def setAlbedoMapUV(self, *args, **kwargs):
		pass

	def setAlbedoMap(self, *args, **kwargs):
		pass

	def setAlbedoMapUVShift(self, *args, **kwargs):
		pass

class ColorBaseBlock(IBlock, std::shared_ptr<pyedm::ColorBaseBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setNormals(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

class FlirBlock(IBlock, std::shared_ptr<pyedm::FlirBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setFlirMap(self, *args, **kwargs):
		pass

class DamageBlock(IBlock, std::shared_ptr<pyedm::DamageBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setAlbedoMapUV(self, *args, **kwargs):
		pass

	def setNormalMapUV(self, *args, **kwargs):
		pass

	def setPerVertexArguments(self, *args, **kwargs):
		pass

	def setAlbedoMap(self, *args, **kwargs):
		pass

	def setNormalMap(self, *args, **kwargs):
		pass

	def setMask(self, *args, **kwargs):
		pass

	def setMaskRGBA(self, *args, **kwargs):
		pass

	def setArgument(self, *args, **kwargs):
		pass

class BoneBlock(IBlock, std::shared_ptr<pyedm::BoneBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setBoneWeights(self, *args, **kwargs):
		pass

	def setBoneIndices(self, *args, **kwargs):
		pass

	def setBones(self, *args, **kwargs):
		pass

	def getBoneNames(self, *args, **kwargs):
		pass

	def setBoneNames(self, *args, **kwargs):
		pass

	def setSkinBox(self, *args, **kwargs):
		pass

class EmissiveBlock(IBlock, std::shared_ptr<pyedm::EmissiveBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setEmissiveMap(self, *args, **kwargs):
		pass

	def setEmissiveMapUV(self, *args, **kwargs):
		pass

	def setAmount(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

	def setEmissiveType(self, *args, **kwargs):
		pass

class EmissiveColorBlock(IBlock, std::shared_ptr<pyedm::EmissiveColorBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

	def setAmount(self, *args, **kwargs):
		pass

class AoBlock(IBlock, std::shared_ptr<pyedm::AoBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setAoMap(self, *args, **kwargs):
		pass

	def setAoMapUV(self, *args, **kwargs):
		pass

	def setAoShift(self, *args, **kwargs):
		pass

class DecalBlock(IBlock, std::shared_ptr<pyedm::DecalBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setDecalMap(self, *args, **kwargs):
		pass

	def setDecalMapUV(self, *args, **kwargs):
		pass

	def setDecalShift(self, *args, **kwargs):
		pass

class NormalBlock(IBlock, std::shared_ptr<pyedm::NormalBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setNormalMap(self, *args, **kwargs):
		pass

	def setNormalMapUV(self, *args, **kwargs):
		pass

class AormsBlock(IBlock, std::shared_ptr<pyedm::AormsBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setAormsMap(self, *args, **kwargs):
		pass

	def setAormsMapUV(self, *args, **kwargs):
		pass

class GlassBlock(IBlock, std::shared_ptr<pyedm::GlassBlock>):
	def __init__(self, *args, **kwargs):
		pass

	def setColorMap(self, *args, **kwargs):
		pass

	def setInstrumental(self, *args, **kwargs):
		pass

class IRenderNode():
	def __init__(self, *args, **kwargs):
		pass

	def setPos(self, *args, **kwargs):
		pass

	def setUV(self, *args, **kwargs):
		pass

	def setSize(self, *args, **kwargs):
		pass

class FakeOmniLights(IRenderNode, std::shared_ptr<pyedm::FakeOmniLights>):
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setTexture(self, *args, **kwargs):
		pass

	def setMinSizeInPixels(self, *args, **kwargs):
		pass

	def setMaxDistance(self, *args, **kwargs):
		pass

	def setLuminance(self, *args, **kwargs):
		pass

	def setShiftToCamera(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class AnimatedFakeOmniLight(FakeOmniLights, std::shared_ptr<pyedm::AnimatedFakeOmniLights>):
	def __init__(self, *args, **kwargs):
		pass

	def setAnimationArg(self, *args, **kwargs):
		pass

	def setLightsAnimation(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class FakeSpotLight():
	def __init__(self, *args, **kwargs):
		pass

	def setPos(self, *args, **kwargs):
		pass

	def setUV(self, *args, **kwargs):
		pass

	def setSize(self, *args, **kwargs):
		pass

	def setBackUV(self, *args, **kwargs):
		pass

	def setDirection(self, *args, **kwargs):
		pass

	def setBackSide(self, *args, **kwargs):
		pass

class FakeSpotLights(IRenderNode, std::shared_ptr<pyedm::FakeSpotLights>):
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setTexture(self, *args, **kwargs):
		pass

	def setMinSizeInPixels(self, *args, **kwargs):
		pass

	def setMaxDistance(self, *args, **kwargs):
		pass

	def setLuminance(self, *args, **kwargs):
		pass

	def setShiftToCamera(self, *args, **kwargs):
		pass

	def setConeSetup(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class AnimatedFakeSpotLight(FakeSpotLights, std::shared_ptr<pyedm::AnimatedFakeSpotLights>):
	def __init__(self, *args, **kwargs):
		pass

	def setAnimationArg(self, *args, **kwargs):
		pass

	def setLightsAnimation(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class SegmentsNode():
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class ShellNode():
	def __init__(self, *args, **kwargs):
		pass

	def setIndices(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class Connector():
	def __init__(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

	def setPropertyFloat(self, *args, **kwargs):
		pass

	def setPropertyString(self, *args, **kwargs):
		pass

class ILight():
	def __init__(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

	def setBrightness(self, *args, **kwargs):
		pass

	def setDistance(self, *args, **kwargs):
		pass

	def setSpecularAmount(self, *args, **kwargs):
		pass

	def setSoftness(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class SpotLight(ILight, std::shared_ptr<pyedm::SpotLight>):
	def __init__(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

	def setBrightness(self, *args, **kwargs):
		pass

	def setDistance(self, *args, **kwargs):
		pass

	def setPhi(self, *args, **kwargs):
		pass

	def setTheta(self, *args, **kwargs):
		pass

	def setAngles(self, *args, **kwargs):
		pass

	def setSpecularAmount(self, *args, **kwargs):
		pass

	def setSoftness(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class Bone(Node, std::shared_ptr<pyedm::Bone>):
	def __init__(self, *args, **kwargs):
		pass

	def setMatrix(self, *args, **kwargs):
		pass

	def getName(self, *args, **kwargs):
		pass

	def setInvertedBaseBoneMatrix(self, *args, **kwargs):
		pass

class PropertyFloat():
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setAnim(self, *args, **kwargs):
		pass

class PropertyFloat2():
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setAnim(self, *args, **kwargs):
		pass

class PropertyFloat3():
	def __init__(self, *args, **kwargs):
		pass

	def set(self, *args, **kwargs):
		pass

	def setAnim(self, *args, **kwargs):
		pass

class PBRNode(IRenderNode, std::shared_ptr<pyedm::PBRNode>):
	def __init__(self, *args, **kwargs):
		pass

	def getName(self, *args, **kwargs):
		pass

	def setIndices(self, *args, **kwargs):
		pass

	def setShadowCaster(self, *args, **kwargs):
		pass

	def setTransparentMode(self, *args, **kwargs):
		pass

	def setOpacityValue(self, *args, **kwargs):
		pass

	def setDecalId(self, *args, **kwargs):
		pass

	def addBlock(self, *args, **kwargs):
		pass

	def setTwoSided(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

	def hasBlock(self, *args, **kwargs):
		pass

	def getBlock(self, *args, **kwargs):
		pass

class MirrorNode(IRenderNode, std::shared_ptr<pyedm::MirrorNode>):
	def __init__(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setNormals(self, *args, **kwargs):
		pass

	def setIndices(self, *args, **kwargs):
		pass

	def setTexture(self, *args, **kwargs):
		pass

	def setTextureCoordinates(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class ColorNode(IRenderNode, std::shared_ptr<pyedm::ColorNode>):
	def __init__(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setNormals(self, *args, **kwargs):
		pass

	def setIndices(self, *args, **kwargs):
		pass

	def setColor(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass

class DeckNode(IRenderNode, std::shared_ptr<pyedm::DeckNode>):
	def __init__(self, *args, **kwargs):
		pass

	def setPositions(self, *args, **kwargs):
		pass

	def setNormals(self, *args, **kwargs):
		pass

	def setBaseTiledMap(self, *args, **kwargs):
		pass

	def setNormalTiledMap(self, *args, **kwargs):
		pass

	def setAormsTiledMap(self, *args, **kwargs):
		pass

	def setBaseMap(self, *args, **kwargs):
		pass

	def setAormsMap(self, *args, **kwargs):
		pass

	def setDamageMap(self, *args, **kwargs):
		pass

	def setDamageMask(self, *args, **kwargs):
		pass

	def setDamageMaskRGBA(self, *args, **kwargs):
		pass

	def setTiledUV(self, *args, **kwargs):
		pass

	def setRegularUV(self, *args, **kwargs):
		pass

	def setRainMask(self, *args, **kwargs):
		pass

	def setIndices(self, *args, **kwargs):
		pass

	def setTransparentMode(self, *args, **kwargs):
		pass

	def setDecalId(self, *args, **kwargs):
		pass

	def setArgument(self, *args, **kwargs):
		pass

	def setControlNode(self, *args, **kwargs):
		pass
