| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 | 
							- /*
 
-  * Author: Landon Fuller <landonf@plausiblelabs.com>
 
-  *
 
-  * Copyright (c) 2008-2009 Plausible Labs Cooperative, Inc.
 
-  * All rights reserved.
 
-  *
 
-  * Permission is hereby granted, free of charge, to any person
 
-  * obtaining a copy of this software and associated documentation
 
-  * files (the "Software"), to deal in the Software without
 
-  * restriction, including without limitation the rights to use,
 
-  * copy, modify, merge, publish, distribute, sublicense, and/or sell
 
-  * copies of the Software, and to permit persons to whom the
 
-  * Software is furnished to do so, subject to the following
 
-  * conditions:
 
-  *
 
-  * The above copyright notice and this permission notice shall be
 
-  * included in all copies or substantial portions of the Software.
 
-  *
 
-  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 
-  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 
-  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 
-  * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 
-  * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 
-  * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 
-  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 
-  * OTHER DEALINGS IN THE SOFTWARE.
 
-  */
 
- #import <Foundation/Foundation.h>
 
- /**
 
-  * @ingroup functions
 
-  *
 
-  * Prototype of a callback function used to execute additional user code with signal information as provided
 
-  * by PLCrashReporter. Called upon completion of crash handling, after the crash report has been written to disk.
 
-  *
 
-  * @param info The signal info.
 
-  * @param uap The crash's threads context.
 
-  * @param context The API client's supplied context value.
 
-  *
 
-  * @sa @ref async_safety
 
-  * @sa PLCrashReporter::setPostCrashCallbacks:
 
-  */
 
- typedef void (*UnityPLCrashReporterPostCrashSignalCallback)(siginfo_t *info, ucontext_t *uap, void *context);
 
- /**
 
-  * @ingroup types
 
-  *
 
-  * This structure contains callbacks supported by PLCrashReporter to allow the host application to perform
 
-  * additional tasks prior to program termination after a crash has occured.
 
-  *
 
-  * @sa @ref async_safety
 
-  */
 
- typedef struct UnityPLCrashReporterCallbacks
 
- {
 
-     /** The version number of this structure. If not one of the defined version numbers for this type, the behavior
 
-      * is undefined. The current version of this structure is 0. */
 
-     uint16_t version;
 
-     /** An arbitrary user-supplied context value. This value may be NULL. */
 
-     void *context;
 
-     /** The callback used to report caught signal information. In version 0 of this structure, all crashes will be
 
-      * reported via this function. */
 
-     UnityPLCrashReporterPostCrashSignalCallback handleSignal;
 
- } UnityPLCrashReporterCallbacks;
 
- @interface UnityPLCrashReporter : NSObject
 
- {
 
-     @private
 
-     /** YES if the crash reporter has been enabled */
 
-     BOOL _enabled;
 
-     /** Application identifier */
 
-     NSString *_applicationIdentifier;
 
-     /** Application version */
 
-     NSString *_applicationVersion;
 
-     /** Path to the crash reporter internal data directory */
 
-     NSString *_crashReportDirectory;
 
- }
 
- + (UnityPLCrashReporter *)sharedReporter;
 
- - (BOOL)hasPendingCrashReport;
 
- - (NSData *)loadPendingCrashReportData;
 
- - (NSData *)loadPendingCrashReportDataAndReturnError:(NSError **)outError;
 
- - (NSData *)generateLiveReport;
 
- - (NSData *)generateLiveReportAndReturnError:(NSError **)outError;
 
- - (BOOL)purgePendingCrashReport;
 
- - (BOOL)purgePendingCrashReportAndReturnError:(NSError **)outError;
 
- - (BOOL)enableCrashReporter;
 
- - (BOOL)enableCrashReporterAndReturnError:(NSError **)outError;
 
- - (void)setCrashCallbacks:(UnityPLCrashReporterCallbacks *)callbacks;
 
- @end
 
 
  |