IPDL/Getting started: Difference between revisions

Jump to navigation Jump to search
no edit summary
mNo edit summary
No edit summary
Line 36: Line 36:
The above specification will generate three headers: PluginProtocolParent.h, PluginProtocolChild.h, and PluginProtocol.h (we'll ignore the third completely; it's full of uninteresting implementation details).  As you might guess, PluginProtocolParent.h defines a C++ class (PluginProtocolParent) that code on the parent side utilizes, the browser in this example.  And similarly, code running in the plugin process will use the PluginProtocolChild class.
The above specification will generate three headers: PluginProtocolParent.h, PluginProtocolChild.h, and PluginProtocol.h (we'll ignore the third completely; it's full of uninteresting implementation details).  As you might guess, PluginProtocolParent.h defines a C++ class (PluginProtocolParent) that code on the parent side utilizes, the browser in this example.  And similarly, code running in the plugin process will use the PluginProtocolChild class.


These Parent and Child classes are "abstract" in the Java senseThe PluginProtocolParent class will look something like the following in C++
These Parent and Child classes are abstract.  They will contain a "Send" function implementation for each message type in the protocol (which inheriting classes can call to initiate communication), and a pure virtual "Recv" function for the message receiver (which needs to be implemented by the inheriting class)For example, the PluginProtocolParent class will look something like the following in C++


   class PluginProtocolParent {
   class PluginProtocolParent {
Confirmed users
431

edits

Navigation menu