public Result <ulong> StartRecordingLoadingTime(LoadingTimeMetadata metadata, TAnnotation annotation) { IntPtr metadataPtr = IntPtr.Zero; uint metadataSize = 0; if (metadata != null) { metadataSize = (uint)Marshal.SizeOf(metadata); metadataPtr = Marshal.AllocHGlobal(Marshal.SizeOf(metadata)); Marshal.StructureToPtr(metadata, metadataPtr, false); } var ps = CProtobufSerialization.Create(annotation); ulong handle = 0; var errorCode = m_LibraryMethods.StartRecordingLoadingTime( metadataPtr, metadataSize, ref ps, ref handle); CProtobufSerialization.CallDealloc(ref ps); if (metadataPtr != IntPtr.Zero) { Marshal.FreeHGlobal(metadataPtr); } return(new Result <ulong>(errorCode, handle)); }
public ErrorCode GetFidelityParameters( ref CProtobufSerialization defaultParameters, ref CProtobufSerialization parameters, uint timeout) { return(ErrorCode.PlatformNotSupported); }
public ErrorCode InitWithSettings(InitializationSettings settings) { CInitializationSettings cSettings = new CInitializationSettings() { persistent_cache = IntPtr.Zero, // Using default one. swappy_tracer_fn = null, // It will be set by native library. fidelity_params_callback = settings.fidelityParamsCallback, training_fidelity_params = IntPtr.Zero, endpoint_uri_override = IntPtr.Zero, swappy_version = 0, // It will be set by native library. max_num_metrics = settings.maxNumMetrics, api_key = IntPtr.Zero }; if (settings.trainingFidelityParams != null) { CProtobufSerialization cs = CProtobufSerialization.Create(settings.trainingFidelityParams); cSettings.training_fidelity_params = Marshal.AllocHGlobal(Marshal.SizeOf(cs)); Marshal.StructureToPtr(cs, cSettings.training_fidelity_params, true); m_Ptrs.Add(cSettings.training_fidelity_params); } if (!string.IsNullOrEmpty(settings.endpointUriOverride)) { cSettings.endpoint_uri_override = Marshal.StringToHGlobalAnsi(settings.endpointUriOverride); m_Ptrs.Add(cSettings.endpoint_uri_override); } return(m_LibraryMethods.InitWithSettings(ref cSettings)); }
public ErrorCode GetFidelityParameters( ref CProtobufSerialization defaultParameters, ref CProtobufSerialization parameters, uint timeout) { return((ErrorCode)TuningFork_getFidelityParameters(ref defaultParameters, ref parameters, timeout)); }
internal static void FidelityParamsCallbackImpl(ref CProtobufSerialization ps) { if (onFidelityParamsReceived != null) { onFidelityParamsReceived(ps); } }
public ErrorCode SetCurrentAnnotation(TAnnotation annotation) { var ps = CProtobufSerialization.Create(annotation); var errorCode = m_LibraryMethods.SetCurrentAnnotation(ref ps); CProtobufSerialization.CallDealloc(ref ps); return(errorCode); }
public ErrorCode StartRecordingLoadingTime( IntPtr eventMetadata, uint eventMetadataSize, ref CProtobufSerialization annotation, ref ulong handle) { return(ErrorCode.PlatformNotSupported); }
public ErrorCode SetFidelityParameters(TFidelity fidelityParams) { var ps = CProtobufSerialization.Create(fidelityParams); var errorCode = m_LibraryMethods.SetFidelityParameters(ref ps); CProtobufSerialization.CallDealloc(ref ps); return(errorCode); }
public ErrorCode StartRecordingLoadingTime( IntPtr eventMetadataPtr, uint eventMetadataSize, ref CProtobufSerialization annotation, ref ulong handle) { return((ErrorCode)TuningFork_startRecordingLoadingTime( eventMetadataPtr, eventMetadataSize, ref annotation, ref handle)); }
static void FidelityParamsCallbackImpl(ref CProtobufSerialization ps) { if (s_ActiveTf == null && s_ActiveTf.onReceiveUploadLog == null) { return; } // Don't call OnReceiveFidelityParameters directly from this thread. s_ActiveTf.m_ReceivedFidelityParameters = ps.ParseMessage <TFidelity>(); }
static void FidelityParamsCallbackImpl(CProtobufSerialization ps) { // Don't call OnReceiveFidelityParameters directly from this thread. if (s_Tuner == null || s_Tuner.onReceiveFidelityParameters == null) { return; } s_Tuner.m_ReceivedFidelityParameters = ps.ParseMessage <TFidelity>(); }
static void DeallocCallbackImpl(ref CProtobufSerialization parameters) { Debug.LogFormat("DeallocCallbackImpl.size: {0}", parameters.size); if (parameters.bytes != IntPtr.Zero) { Marshal.FreeHGlobal(parameters.bytes); } parameters.bytes = parameters.dealloc = IntPtr.Zero; parameters.size = 0; }
public ErrorCode SetFidelityParameters(TFidelity fidelityParams) { if (MessageUtil.HasInvalidEnumField(fidelityParams)) { return(ErrorCode.InvalidFidelity); } var ps = CProtobufSerialization.Create(fidelityParams); var errorCode = m_LibraryMethods.SetFidelityParameters(ref ps); CProtobufSerialization.CallDealloc(ref ps); return(errorCode); }
public ErrorCode SetCurrentAnnotation(TAnnotation annotation) { if (MessageUtil.HasInvalidEnumField(annotation)) { return(ErrorCode.InvalidAnnotation); } var ps = CProtobufSerialization.Create(annotation); var errorCode = m_LibraryMethods.SetCurrentAnnotation(ref ps); CProtobufSerialization.CallDealloc(ref ps); return(errorCode); }
/// <summary> /// Free all memory allocated by serialization. /// </summary> /// <param name="ps">The serialized proto message.</param> public static void CallDealloc(ref CProtobufSerialization ps) { if (ps.dealloc == IntPtr.Zero) { return; } DeallocCallback dealloc = Marshal.GetDelegateForFunctionPointer <DeallocCallback>(ps.dealloc); if (dealloc != null) { dealloc(ref ps); } }
public Result <TFidelity> FindFidelityParametersInApk(string filename) { var ps = new CProtobufSerialization(); var errorCode = m_LibraryMethods.FindFidelityParamsInApk(filename, ref ps); TFidelity fp = null; if (errorCode == ErrorCode.Ok) { fp = ps.ParseMessage <TFidelity>(); if (fp == null) { errorCode = ErrorCode.InvalidFidelity; } } CProtobufSerialization.CallDealloc(ref ps); return(new Result <TFidelity>(errorCode, fp)); }
public Result <TFidelity> GetFidelityParameters(TFidelity defaultFidelity, UInt32 initialTimeoutMs) { var defaultPs = CProtobufSerialization.Create(defaultFidelity); var newPs = new CProtobufSerialization(); var errorCode = m_LibraryMethods.GetFidelityParameters( ref defaultPs, ref newPs, initialTimeoutMs); TFidelity fp = null; if (errorCode == ErrorCode.Ok) { fp = newPs.ParseMessage <TFidelity>(); if (fp == null) { errorCode = ErrorCode.InvalidFidelity; } } CProtobufSerialization.CallDealloc(ref newPs); CProtobufSerialization.CallDealloc(ref defaultPs); return(new Result <TFidelity>(errorCode, fp)); }
public ErrorCode Init(FidelityParamsCallback fidelityParamsCallback, IMessage trainingFidelityParameters, String endpointUrlOverride) { IntPtr trainingFidelityParametersPtr = IntPtr.Zero; if (trainingFidelityParameters != null) { CProtobufSerialization cs = CProtobufSerialization.Create(trainingFidelityParameters); trainingFidelityParametersPtr = Marshal.AllocHGlobal(Marshal.SizeOf(cs)); Marshal.StructureToPtr(cs, trainingFidelityParametersPtr, true); m_Ptrs.Add(trainingFidelityParametersPtr); } IntPtr endpointUrlOverridePtr = IntPtr.Zero; if (!string.IsNullOrEmpty(endpointUrlOverride)) { endpointUrlOverridePtr = Marshal.StringToHGlobalAnsi(endpointUrlOverride); m_Ptrs.Add(endpointUrlOverridePtr); } return(m_LibraryMethods.Init(fidelityParamsCallback, trainingFidelityParametersPtr, endpointUrlOverridePtr)); }
static extern int TuningFork_setCurrentAnnotation(ref CProtobufSerialization annotation);
public ErrorCode SetCurrentAnnotation(ref CProtobufSerialization annotation) { return(ErrorCode.PlatformNotSupported); }
static extern int TuningFork_setFidelityParameters(ref CProtobufSerialization fidelityParameters);
public ErrorCode SetFidelityParameters(ref CProtobufSerialization fidelityParameters) { return((ErrorCode)TuningFork_setFidelityParameters(ref fidelityParameters)); }
static extern int Unity_TuningFork_findFidelityParamsInApk( string filename, ref CProtobufSerialization fidelityParameters);
public ErrorCode SetCurrentAnnotation(ref CProtobufSerialization annotation) { return((ErrorCode)TuningFork_setCurrentAnnotation(ref annotation)); }
public ErrorCode FindFidelityParamsInApk(string filename, ref CProtobufSerialization fidelityParameters) { return(ErrorCode.PlatformNotSupported); }
static extern int TuningFork_startRecordingLoadingTime( IntPtr eventMetadata, uint eventMetadataSize, ref CProtobufSerialization annotation, ref ulong handle);
public ErrorCode SetFidelityParameters(ref CProtobufSerialization fidelityParameters) { return(ErrorCode.PlatformNotSupported); }
public ErrorCode FindFidelityParamsInApk(string filename, ref CProtobufSerialization fidelityParameters) { return((ErrorCode)Unity_TuningFork_findFidelityParamsInApk(filename, ref fidelityParameters)); }
static extern int TuningFork_getFidelityParameters( ref CProtobufSerialization defaultParameters, ref CProtobufSerialization parameters, UInt32 timeout);