using System; using System.Collections.Generic; using UnityEngine.Scripting; namespace UnityEngine.Playables { // Token: 0x020004BC RID: 1212 [RequiredByNativeCode] [Serializable] public abstract class PlayableAsset : ScriptableObject, IPlayableAsset { // Token: 0x06003B35 RID: 15157 public abstract Playable CreatePlayable(PlayableGraph graph, GameObject owner); // Token: 0x17000D7A RID: 3450 // (get) Token: 0x06003B36 RID: 15158 RVA: 0x00067D3C File Offset: 0x00065F3C public virtual double duration { get { return PlayableBinding.DefaultDuration; } } // Token: 0x17000D7B RID: 3451 // (get) Token: 0x06003B37 RID: 15159 RVA: 0x00067D58 File Offset: 0x00065F58 public virtual IEnumerable outputs { get { return PlayableBinding.None; } } // Token: 0x06003B38 RID: 15160 RVA: 0x00067D74 File Offset: 0x00065F74 [RequiredByNativeCode] internal unsafe static void Internal_CreatePlayable(PlayableAsset asset, PlayableGraph graph, GameObject go, IntPtr ptr) { Playable playable; if (asset == null) { playable = Playable.Null; } else { playable = asset.CreatePlayable(graph, go); } Playable* ptr2 = (Playable*)ptr.ToPointer(); *ptr2 = playable; } // Token: 0x06003B39 RID: 15161 RVA: 0x00067DB4 File Offset: 0x00065FB4 [RequiredByNativeCode] internal unsafe static void Internal_GetPlayableAssetDuration(PlayableAsset asset, IntPtr ptrToDouble) { double duration = asset.duration; double* ptr = (double*)ptrToDouble.ToPointer(); *ptr = duration; } } }