This app provides monitoring and information features for the common freifunk user and the technical stuff of a freifunk community.
Code base is taken from a TUM Practical Course project and added here to see if Freifunk Altdorf can use it.
https://www.freifunk-altdorf.de
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
1.3 KiB
62 lines
1.3 KiB
// Copyright 2004-present Facebook. All Rights Reserved. |
|
|
|
#pragma once |
|
|
|
#include <functional> |
|
#include <memory> |
|
#include <string> |
|
|
|
#include <cxxreact/JSExecutor.h> |
|
#include <cxxreact/MessageQueueThread.h> |
|
#include <jschelpers/JavaScriptCore.h> |
|
|
|
#ifndef RN_EXPORT |
|
#define RN_EXPORT __attribute__((visibility("default"))) |
|
#endif |
|
|
|
namespace facebook { |
|
namespace react { |
|
|
|
namespace ReactMarker { |
|
|
|
enum ReactMarkerId { |
|
NATIVE_REQUIRE_START, |
|
NATIVE_REQUIRE_STOP, |
|
RUN_JS_BUNDLE_START, |
|
RUN_JS_BUNDLE_STOP, |
|
CREATE_REACT_CONTEXT_STOP, |
|
JS_BUNDLE_STRING_CONVERT_START, |
|
JS_BUNDLE_STRING_CONVERT_STOP, |
|
NATIVE_MODULE_SETUP_START, |
|
NATIVE_MODULE_SETUP_STOP, |
|
}; |
|
|
|
#ifdef __APPLE__ |
|
using LogTaggedMarker = std::function<void(const ReactMarkerId, const char* tag)>; |
|
#else |
|
typedef void(*LogTaggedMarker)(const ReactMarkerId, const char* tag); |
|
#endif |
|
extern RN_EXPORT LogTaggedMarker logTaggedMarker; |
|
|
|
extern void logMarker(const ReactMarkerId markerId); |
|
|
|
} |
|
|
|
namespace JSCNativeHooks { |
|
|
|
using Hook = JSValueRef(*)( |
|
JSContextRef ctx, |
|
JSObjectRef function, |
|
JSObjectRef thisObject, |
|
size_t argumentCount, |
|
const JSValueRef arguments[], |
|
JSValueRef *exception); |
|
extern RN_EXPORT Hook loggingHook; |
|
extern RN_EXPORT Hook nowHook; |
|
|
|
typedef void(*ConfigurationHook)(JSGlobalContextRef); |
|
extern RN_EXPORT ConfigurationHook installPerfHooks; |
|
|
|
} |
|
|
|
} }
|
|
|