Copy as Markdown
Other Tools
/*
* DO NOT EDIT. THIS FILE IS GENERATED FROM $SRCDIR/ipc/glue/test/utility_process_xpcom/nsIUtilityProcessTest.idl
*/
#ifndef __gen_nsIUtilityProcessTest_h__
#define __gen_nsIUtilityProcessTest_h__
#include "nsISupports.h"
#include "nsTArray.h"
#include "js/Value.h"
#include "js/GCAnnotations.h"
/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif
/* starting interface: nsIUtilityProcessTest */
#define NS_IUTILITYPROCESSTEST_IID_STR "0a4478f4-c5ae-4fb1-8686-d5b09fb99afb"
#define NS_IUTILITYPROCESSTEST_IID \
{0x0a4478f4, 0xc5ae, 0x4fb1, \
{ 0x86, 0x86, 0xd5, 0xb0, 0x9f, 0xb9, 0x9a, 0xfb }}
class NS_NO_VTABLE nsIUtilityProcessTest : public nsISupports {
public:
NS_DECLARE_STATIC_IID_ACCESSOR(NS_IUTILITYPROCESSTEST_IID)
/* Used by ToJSValue to check which scriptable interface is implemented. */
using ScriptableInterfaceType = nsIUtilityProcessTest;
/* [implicit_jscontext] Promise startProcess ([optional] in Array<ACString> actorsToAdd); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD StartProcess(const nsTArray<nsCString >& actorsToAdd, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* [implicit_jscontext] Promise untilChildProcessDead (in uint32_t pid); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD UntilChildProcessDead(uint32_t pid, JSContext* cx, ::mozilla::dom::Promise * * _retval) = 0;
/* void noteIntentionalCrash (in unsigned long pid); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD NoteIntentionalCrash(uint32_t pid) = 0;
/* void stopProcess ([optional] in string utilityActorName); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD StopProcess(const char * utilityActorName) = 0;
/* void testTelemetryProbes (); */
JS_HAZ_CAN_RUN_SCRIPT NS_IMETHOD TestTelemetryProbes(void) = 0;
};
NS_DEFINE_STATIC_IID_ACCESSOR(nsIUtilityProcessTest, NS_IUTILITYPROCESSTEST_IID)
/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIUTILITYPROCESSTEST \
NS_IMETHOD StartProcess(const nsTArray<nsCString >& actorsToAdd, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
NS_IMETHOD UntilChildProcessDead(uint32_t pid, JSContext* cx, ::mozilla::dom::Promise * * _retval) override; \
NS_IMETHOD NoteIntentionalCrash(uint32_t pid) override; \
NS_IMETHOD StopProcess(const char * utilityActorName) override; \
NS_IMETHOD TestTelemetryProbes(void) override;
/* Use this macro when declaring the members of this interface when the
class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIUTILITYPROCESSTEST \
nsresult StartProcess(const nsTArray<nsCString >& actorsToAdd, JSContext* cx, ::mozilla::dom::Promise * * _retval); \
nsresult UntilChildProcessDead(uint32_t pid, JSContext* cx, ::mozilla::dom::Promise * * _retval); \
nsresult NoteIntentionalCrash(uint32_t pid); \
nsresult StopProcess(const char * utilityActorName); \
nsresult TestTelemetryProbes(void);
/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIUTILITYPROCESSTEST(_to) \
NS_IMETHOD StartProcess(const nsTArray<nsCString >& actorsToAdd, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to StartProcess(actorsToAdd, cx, _retval); } \
NS_IMETHOD UntilChildProcessDead(uint32_t pid, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return _to UntilChildProcessDead(pid, cx, _retval); } \
NS_IMETHOD NoteIntentionalCrash(uint32_t pid) override { return _to NoteIntentionalCrash(pid); } \
NS_IMETHOD StopProcess(const char * utilityActorName) override { return _to StopProcess(utilityActorName); } \
NS_IMETHOD TestTelemetryProbes(void) override { return _to TestTelemetryProbes(); }
/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIUTILITYPROCESSTEST(_to) \
NS_IMETHOD StartProcess(const nsTArray<nsCString >& actorsToAdd, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->StartProcess(actorsToAdd, cx, _retval); } \
NS_IMETHOD UntilChildProcessDead(uint32_t pid, JSContext* cx, ::mozilla::dom::Promise * * _retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->UntilChildProcessDead(pid, cx, _retval); } \
NS_IMETHOD NoteIntentionalCrash(uint32_t pid) override { return !_to ? NS_ERROR_NULL_POINTER : _to->NoteIntentionalCrash(pid); } \
NS_IMETHOD StopProcess(const char * utilityActorName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->StopProcess(utilityActorName); } \
NS_IMETHOD TestTelemetryProbes(void) override { return !_to ? NS_ERROR_NULL_POINTER : _to->TestTelemetryProbes(); }
#endif /* __gen_nsIUtilityProcessTest_h__ */