#pragma once #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-parameter" #pragma GCC diagnostic ignored "-Wshadow" #include #pragma GCC diagnostic pop #include #include #include namespace node_mbgl { class NodeRequest; struct NodeAsyncRequest : public mbgl::AsyncRequest { NodeAsyncRequest(); ~NodeAsyncRequest() override; NodeRequest* request = nullptr; }; class NodeRequest : public Nan::ObjectWrap { public: NodeRequest(mbgl::FileSource::Callback, NodeAsyncRequest*); ~NodeRequest() override; static Nan::Persistent constructor; static void Init(); static void New(const Nan::FunctionCallbackInfo&); static void HandleCallback(const Nan::FunctionCallbackInfo&); void unrefRequest(); mbgl::FileSource::Callback callback; NodeAsyncRequest* asyncRequest; Nan::AsyncResource* asyncResource = new Nan::AsyncResource("mbgl:execute"); }; } // namespace node_mbgl