Subversion Repositories HomeAutomation

Rev

Rev 1604 | Rev 1625 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | SVN | RSS feed

Rev 1604 Rev 1608
Line 41... Line 41...
41
    Plugin();
41
    Plugin();
42
    virtual ~Plugin();
42
    virtual ~Plugin();
43
   
43
   
44
    std::string GetName();
44
    std::string GetName();
45
    ExportFunctionList& GetExportFunctions();
45
    ExportFunctionList& GetExportFunctions();
46
    FunctionNameList& GetImportFunctionNames();
-
 
47
   
46
   
48
    virtual void InitializeDone();
47
    virtual void InitializeDone();
-
 
48
    virtual void ExecutionResult(std::string response, unsigned int request_id);
49
   
49
   
50
protected:
50
protected:
51
    typedef boost::shared_ptr<char> TrackerPointer;
51
    typedef boost::shared_ptr<char> TrackerPointer;
52
   
52
   
53
    std::string name_;
53
    std::string name_;
54
    TrackerPointer tracker_;
54
    TrackerPointer tracker_;
55
   
55
   
56
    void Call(std::string name, ArgumentListPointer arguments);
56
    void Call(unsigned int request_id, std::string name, ArgumentListPointer arguments);
-
 
57
    void Execute(unsigned int request_id, std::string code);
57
    void ExportFunction(std::string name, v8::InvocationCallback function);
58
    void ExportFunction(std::string name, v8::InvocationCallback function);
58
    void ImportFunction(std::string name);
59
    static bool ImportFunction(std::string name);
59
   
60
   
60
private:
61
private:
61
    ExportFunctionList export_functions_;
62
    ExportFunctionList export_functions_;
62
    FunctionNameList import_function_names_;
-
 
63
};
63
};
64
 
64
 
65
}; // namespace vm
65
}; // namespace vm
66
}; // namespace atom
66
}; // namespace atom
67
 
67