#pragma once

#include "il2cpp-config.h"

#ifndef _MSC_VER
# include <alloca.h>
#else
# include <malloc.h>
#endif

#include <stdint.h>
#include <assert.h>
#include <exception>

// System.Object
struct Il2CppObject;
// UnityEngine.Experimental.Director.AnimatorControllerPlayable
struct AnimatorControllerPlayable_t3906681469;
struct AnimatorControllerPlayable_t3906681469_marshaled_pinvoke;
struct AnimatorControllerPlayable_t3906681469_marshaled_com;

#include "codegen/il2cpp-codegen.h"
#include "UnityEngine_UnityEngine_Experimental_Director_Anim3906681469.h"
#include "UnityEngine_UnityEngine_Experimental_Director_Playab70832698.h"
#include "mscorlib_System_Object4170816371.h"

// UnityEngine.Experimental.Director.Playable UnityEngine.Experimental.Director.AnimatorControllerPlayable::get_node()
extern "C"  Playable_t70832698  AnimatorControllerPlayable_get_node_m3242771325 (AnimatorControllerPlayable_t3906681469 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Boolean UnityEngine.Experimental.Director.AnimatorControllerPlayable::Equals(System.Object)
extern "C"  bool AnimatorControllerPlayable_Equals_m3639847979 (AnimatorControllerPlayable_t3906681469 * __this, Il2CppObject * ___p0, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// System.Int32 UnityEngine.Experimental.Director.AnimatorControllerPlayable::GetHashCode()
extern "C"  int32_t AnimatorControllerPlayable_GetHashCode_m3116606223 (AnimatorControllerPlayable_t3906681469 * __this, const MethodInfo* method) IL2CPP_METHOD_ATTR;
// UnityEngine.Experimental.Director.Playable UnityEngine.Experimental.Director.AnimatorControllerPlayable::op_Implicit(UnityEngine.Experimental.Director.AnimatorControllerPlayable)
extern "C"  Playable_t70832698  AnimatorControllerPlayable_op_Implicit_m10207343 (Il2CppObject * __this /* static, unused */, AnimatorControllerPlayable_t3906681469  ___s0, const MethodInfo* method) IL2CPP_METHOD_ATTR;

// Methods for marshaling
struct AnimatorControllerPlayable_t3906681469;
struct AnimatorControllerPlayable_t3906681469_marshaled_pinvoke;

extern "C" void AnimatorControllerPlayable_t3906681469_marshal_pinvoke(const AnimatorControllerPlayable_t3906681469& unmarshaled, AnimatorControllerPlayable_t3906681469_marshaled_pinvoke& marshaled);
extern "C" void AnimatorControllerPlayable_t3906681469_marshal_pinvoke_back(const AnimatorControllerPlayable_t3906681469_marshaled_pinvoke& marshaled, AnimatorControllerPlayable_t3906681469& unmarshaled);
extern "C" void AnimatorControllerPlayable_t3906681469_marshal_pinvoke_cleanup(AnimatorControllerPlayable_t3906681469_marshaled_pinvoke& marshaled);

// Methods for marshaling
struct AnimatorControllerPlayable_t3906681469;
struct AnimatorControllerPlayable_t3906681469_marshaled_com;

extern "C" void AnimatorControllerPlayable_t3906681469_marshal_com(const AnimatorControllerPlayable_t3906681469& unmarshaled, AnimatorControllerPlayable_t3906681469_marshaled_com& marshaled);
extern "C" void AnimatorControllerPlayable_t3906681469_marshal_com_back(const AnimatorControllerPlayable_t3906681469_marshaled_com& marshaled, AnimatorControllerPlayable_t3906681469& unmarshaled);
extern "C" void AnimatorControllerPlayable_t3906681469_marshal_com_cleanup(AnimatorControllerPlayable_t3906681469_marshaled_com& marshaled);
