1. A reciprocating drive apparatus comprising;
a housing;
a drive shaft rotatably mounted in said housing;
an elongated spindle mounted in said housing for reciprocating motion, said spindle having a receiver at a first end thereof configured to engage a wobble plate interface structure;
a wobble plate assembly mounted on said shaft and having an elongated arm with a wobble plate interface structure for engaging said spindle receiver;
said interface structure comprising first and second ball-type interfaces concentrically aligned with one another, said first interface causing reciprocating motion of said spindle and said second interface preventing rotation of said spindle.
2. A reciprocating drive apparatus as defined in claim 1 wherein said first ball-type interface has a larger circumference than said second ball-type interface.
3. A reciprocating drive apparatus as defined in claim 2 wherein said second interface is located at the outer end of said wobble plate assembly.
4. A reciprocating drive apparatus as defined in claim 3 wherein said spindle receiver comprises a first generally cylindrical opening oriented transversely of the length of the spindle configured to receive said first ball-type interface, said first interface contacting the inside surface of said opening of said receiver in a point contact relationship during reciprocation of said spindle.
5. A reciprocating drive apparatus as defined in claim 4 wherein said spindle receiver defines an elongated slot with side walls extending outwardly from said cylindrical opening, said slot having its length oriented in the direction of reciprocation of said spindle, said second ball-type interface reciprocating in said slot during reciprocation of said spindle, the diameter of said second ball-type interface being slightly smaller than said slot width so that said second interface contacts said slot side walls in a point contact relationship during reciprocation of said spindle.
6. A reciprocating drive apparatus as defined in claim 4 wherein said point contact is at a location that approaches the center of said spindle.
7. A reciprocating drive apparatus as defined in claim 1 wherein said elongated spindle comprises a cylindrical member to which said receiver is attached.
8. A reciprocating drive apparatus as defined in claim 7 wherein said cylindrical member is a hollow tube and said cylindrical member has a connecting portion that is inserted into said hollow tube and secured thereto.
9. A reciprocating drive apparatus as defined in claim 1 wherein said elongated arm has a generally circular cross section that decreases in size from its shaft end to said wobble plate interface structure end.
10. A reciprocating drive apparatus as defined in claim 1 wherein said wobble plate assembly comprises a wobble plate journaled in bearings at an acute angle relative to the axis of said shaft so that said wobble plate moves said arm in a reciprocating path parallel to the axis of said shaft during rotation of said shaft.
11. A reciprocating drive apparatus as defined in claim 1 wherein said first ball-type interface comprises a generally spherically shaped portion that merges with said arm at one end thereof and merges with said second ball-type interface at the opposite end thereof.
12. A reciprocating drive apparatus as defined in claim 1 wherein said second ball-type interface comprises a truncated generally spherically shaped portion that merges with said first ball-type interface at one end thereof and terminates in a generally flat surface at an opposite end portion thereof.
13. A reciprocating drive apparatus as defined in claim 1 further comprising a guide sleeve mounted in said housing and said spindle is slideably mounted in said sleeve.
14. A reciprocating saw comprising:
a housing;
a motor having a motor shaft located in said housing;
a drive shaft rotatably mounted in said housing parallel to said motor shaft;
a gear mechanism interconnecting said motor shaft and said drive shaft;
a wobble plate assembly mounted on said drive shaft and having an elongated arm with a wobble plate interface structure for engaging a spindle receiver;
an elongated spindle mounted in said housing for reciprocating motion, said spindle having a receiver at a first end thereof configured to engage said wobble plate interface structure, said receiver having a transversely oriented cylindrical opening that merges into an elongated slot opening, with each opening having side walls for contacting said wobble plate interface structure;
said interface structure comprising first and second ball-type interfaces concentrically aligned with one another, said first interface causing reciprocating motion of said spindle by contacting said cylindrical opening side wall during operation and said second interface contacting said slot opening side wall to prevent rotation of said spindle during operation.
15. A reciprocating saw as defined in claim 14 wherein said first interface contacts said cylindrical opening substantially at a single point at any time during operation.
16. A reciprocating saw as defined in claim 14 wherein said second interface contacts said elongated opening substantially at a single point at any time during operation.
The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.
1. A method of processing communication packets comprising:
assigning a first communication packet to a first communication data structure which is unique to a first connection that comprises said first communication packet;
selecting a first event list from a database, said first event list selected based on a classification of said first communication packet, said first event list identifying a first plurality of communication modules specific for said first connection and an ordering thereof; and
processing said first communication packet through said first plurality of communication modules based on said ordering.
2. A method as described in claim 1 further comprising classifying said first communication packet to determine which communication modules are required for processing thereof, said classifying performed before said selecting.
3. A method as described in claim 1 wherein said first communication packet is an initial communication packet of a plurality of communication packets of said first connection.
4. A method as described in claim 3 further comprising:
accessing a second communication packet of said first connection;
accessing said first communication data structure to identify said first event list associated with said first connection;
processing said second communication packet through said plurality of communication modules based on said ordering.
5. A method as described in claim 4 wherein said communication modules comprise function call interfaces.
6. A method as described in claim 4 wherein said communication packets are send communication packets.
7. A method as described in claim 4 wherein said communication packets are receive communication packets.
8. A method as described in claim 1 wherein said first data structure comprises a first pointer to the first communication module of said first event list and a second pointer which points to the currently processed communication module during said processing of said fist event list.
9. A method as described in claim 1 further comprising:
assigning an third communication packet to a second communication data structure that is unique to a second connection that comprises said third communication packet;
selecting a second event list from said database, said second event list selected based on a classification of said third communication packet, said second event list identifying a second plurality of communication modules specific for said second connection and an ordering thereof, wherein said first plurality of communication modules is different from said second plurality of communication modules; and
processing said third communication packet through said second plurality of communication modules based on said ordering of said second event list.
10. A method as described in claim 9 wherein said third communication packet is an initial communication packet of a plurality of communication packets of said second connection.
11. A method as described in claim 10 further comprising:
accessing a fourth communication packet associated with said second connection;
accessing said second communication data structure to identify said second event list associated with said second connection;
processing said fourth communication packet through said second plurality of communication modules based on said ordering of said second event list.
12. A method as described in claim 9 wherein said second data structure comprises a first pointer to the first communication module of said second event list and a second pointer which points to the currently processed communication module during said processing of said second event list.
13. A method as described in claim 9 further comprising classifying said third communication packet to determine which communication modules are required for processing thereof, said classifying of said third communication packet performed before said selecting of said second event list.
14. A method as described in claim 9 wherein said communication modules comprise function call interfaces.
15. A method of processing communication packets within a communication framework comprising a first plurality of modules, said method comprising:
assigning a first communication packet to a first communication data structure which is unique to a first connection that comprises said first communication packet;
selecting a first event list from a database, said first event list selected based on a classification of said first communication packet, said first event list identifying a second plurality of modules specific for said first connection and an ordering thereof, wherein said second plurality is a subset of said first plurality; and
processing said first communication packet through said second plurality of modules based on said ordering.
16. A method as described in claim 15 further comprising classifying said first communication packet to determine which modules are required for processing thereof, said classifying performed before said selecting.
17. A method as described in claim 15 wherein said first communication packet is an initial communication packet of a plurality of communication packets of said first connection and further comprising:
accessing a second communication packet of said first connection;
accessing said first communication data structure to identify said first event list associated with said first connection; and
processing said second communication packet through said second plurality of modules based on said ordering.
18. A method as described in claim 15 wherein said first data structure comprises a first pointer to the first module of said first event list and a second pointer which points to the currently processed module during said processing of said first event list.
19. A method as described in claim 15 further comprising:
assigning an third communication packet to a second communication data structure that is unique to a second connection that comprises said third communication packet;
selecting a second event list from said database, said second event list selected based on a classification of said third communication packet, said second event list identifying a third plurality of modules specific for said second connection and an ordering thereof, wherein said third plurality is a subset of said first plurality and wherein further said second plurality is different from said third plurality; and
processing said third communication packet through said third plurality of modules based on said ordering of said second event list.
20. A method as described in claim 19 wherein said third communication packet is an initial communication packet of a plurality of communication packets of said second connection and further comprising:
accessing a fourth communication packet associated with said second connection;
accessing said second communication data structure to identify said second event list associated with said second connection;
processing said fourth communication packet through said third plurality of modules based on said ordering of said second event list.
21. A method as described in claim 19 wherein said second data structure comprises a first pointer to the first communication module of said second event list and a second pointer which points to the currently processed module during said processing of said second event list.
22. A method as described in claim 19 further comprising classifying said third communication packet to determine which modules are required for processing thereof, said classifying of said third communication packet performed before said selecting of said second event list.
23. A communication system comprising:
a) a first plurality of communication modules for processing communication packets;
b) a database comprising:
a first event list indicating a second plurality of communication modules for processing communication packets and an ordering thereof and wherein said second plurality is a subset of said first plurality; and
a second event list indicating a third plurality of communication modules for processing communication packets and an ordering thereof and wherein said third plurality is a subset of said first plurality and is different from said second plurality;
c) a classifier for classifying respective communication packets and based thereon for assigning respective communication packets to one of said first and second event lists for processing thereof and wherein communication packets of a common communication connection are processed through the same event list.
24. A communication system as described in claim 23 further comprising a plurality of data structures, each data structure associated with a respective communication connection and indicating an event list to be used for processing communication packets of said respective communication connection.
25. A communication system as described in claim 24 wherein said communication modules are function call modules.
26. A communication system as described in claim 24 wherein said communication packets are send communication packets.
27. A communication system as described in claim 24 wherein said communication packets are receive communication packets.