worker.h 736 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #ifndef WORKER_H_
  2. #define WORKER_H_
  3. #include <node.h>
  4. #include <node_object_wrap.h>
  5. #include <v8.h>
  6. #include <nan.h>
  7. using namespace node;
  8. using namespace v8;
  9. class Worker {
  10. public:
  11. Worker();
  12. virtual ~Worker();
  13. // libuv's request struct.
  14. uv_work_t request;
  15. // Callback
  16. Nan::Callback *callback;
  17. // Parameters
  18. void *parameters;
  19. // Results
  20. void *return_value;
  21. // Did we raise an error
  22. bool error;
  23. // The error message
  24. char *error_message;
  25. // Error code if not message
  26. int error_code;
  27. // Any return code
  28. int return_code;
  29. // Method we are going to fire
  30. void (*execute)(Worker *worker);
  31. Local<Value> (*mapper)(Worker *worker);
  32. };
  33. #endif // WORKER_H_