1461124549-f372fb21-fd06-44e5-add1-31faa0ea20ca

1. Non-transitory computer-readable media (\u201cmedia\u201d) having computer-executable instructions embodied thereon that, when executed, cause a computing device to perform a method of transferring engineering data to 3D models, the method comprising:
obtaining engineering data in a first electronic format from a computer aided design software component, wherein the first electronic format represents a three-dimensional engineering model;
selecting a plurality of objects associated with the engineering data;
scanning the engineering data for entity criteria that will be used to search for other objects to construct entity replacement commands;
assigning an object type to each of the plurality of objects, wherein object types include a mathematical curve, a railed surface, a mathematical surface, and a mesh;
for each of the plurality of objects, converting the object’s engineering data to object type data corresponding to the assigned object type, wherein converting the object’s engineering data includes
A) when the assigned object type is a mathematical curve, then determining whether the object is to be converted to a NURBS curve or an alternate type of mathematical curve,
1) when the object is to be converted to a NURBS curve, then generating a B\xe9zier curve set from the object’s engineering data, and
2) when the object is to be converted to the alternate type of mathematical curve, then generating the alternate type of mathematical curve from the object’s engineering data,

B) when the assigned object type is a railed surface, then determining whether the object is to be converted to a NURBS curve or an alternate type of mathematical curve,
1) when the object is to be converted to a NURBS curve, then
a) generating a B\xe9zier curve set from the object’s engineering data,
b) generating a NURBS curve from the B\xe9zier curve set, and
c) appending geometric shape data for extruding a surface,

2) when the object is to be converted to the alternate type of mathematical curve, then
a) generating the alternate type of mathematical curve from the object’s engineering data, and
b) appending geometric shape data for extruding a surface,
C) when the assigned object type is a mathematical surface, then determining whether the object is to be converted to a NURBS surface or an alternate type of mathematical surface,
1) when the object is to be converted to a NURBS surface, then
a) reading one or more curve point data sets encapsulated in the object,
b) generating a B\xe9zier curve set for each of the one of more curve point data sets,
c) generating a NURBS curve object for each of the one or more B\xe9zier curve sets, and

2) when the object is to be converted to the alternate type of mathematical surface, then generating the alternate type of mathematical surface from the object’s engineering data, and

D) when the assigned object type is a mesh, wherein the object’s engineering data defines non-overlapping triangle objects, then
1) scanning the object’s engineering data to generate a table of data indexing vertices of the triangle objects,
2) scanning the engineering data to match each triangle object with corresponding vertex indices, and
3) generating a vertex array based on the data in the table;
transporting the object type data to a 3D modeling software component via a plurality of connection handlers of a connection handler pool, wherein each of the plurality of connection handlers run in a separate system thread;
formatting the object type data to a second electronic format compatible with the 3D modeling software component; and
creating a 3D model according to the object type data for each of the plurality of objects via the 3D modeling software component.
2. The media of claim 1, wherein object types include an entity set object type.
3. The media of claim 2, wherein the converting the engineering data to a mesh object type comprises:
providing engineering data comprising a plurality of triangle objects which form a surface of one of the plurality of objects;
scanning a vertex of each of the plurality of triangle objects; and
generating a transfer set comprising a command header and a count of vertices and faces of the triangle objects.
4. The media of claim 3, wherein some of the plurality of triangle objects reference the same vertex.
5. The media of claim 3, wherein some of the plurality of triangle objects are reduced to a single hash table entry in a vertex array.
6. The media of claim 2, wherein converting the engineering data to an entity set object type comprises converting the engineering data to models from a 3D library.
7. The media of claim 2, wherein converting the engineering data to an entity set object type comprises:
scanning the engineering data for entity criteria for some of the plurality of objects;
forming an entity attribute transfer set for the plurality of objects meeting the scanned entity criteria; and
transporting the entity attribute transfer set for the plurality of objects meeting the scanned entity criteria to the 3D modeling software component.
8. The media of claim 7, wherein additional objects meeting the scanned entity criteria are located simultaneously while previously located objects meeting the scanned entity criteria are transported.
9. The media of claim 1, wherein the creating a 3D model comprises extruding a geometric shape along a rail generated from the engineering data.
10. A computer-implemented method of transferring data between a first computer having an engineering computer aided design (CAD) software component and a second computer having a 3D modeling software component, the computer-implemented method comprising:
connecting the engineering CAD software component to the 3D modeling software component via a communications link between the first computer and the second computer, the 3D modeling software component comprising a connection handler pool with each connection handler of the connection handler pool running in a separate system thread so as to listen for new events simultaneously with receiving data;
selecting a plurality of objects represented by engineering data in a first electronic format from the engineering CAD software component, wherein the first electronic format represents a three-dimensional engineering model;
assigning an object type to each of the plurality of objects, wherein object types include a mathematical curve, a railed surface, a mathematical surface, and a mesh;
converting the engineering data to an associated object type data for each of the assigned object types, wherein converting the engineering data includes
A) when the assigned object type is a mathematical curve, then
1) determining whether the object is to be converted to a NURBS curve or an alternate type of mathematical curve, and
2) generating the determined type of curve,

B) when the assigned object type is a railed surface, then
1) determining whether the object is to be converted to a NURBS curve or an alternate type of mathematical curve,
2) generating the determined type of curve, and
3) appending geometric shape data for extruding a surface,

C) when the assigned object type is the mathematical surface, then
1) determining whether the object is to be converted to a NURBS surface or an alternate type of mathematical surface, and
2) generating the determined type of surface, and

D) when the assigned object type is a mesh, wherein the engineering data defines non-overlapping triangle objects, then
1) scanning the object’s engineering data to determine associations between the triangle objects and triangle vertices, and
2) generating a vertex array based on the associations between the triangle objects and the triangle vertices;
streaming the converted object type data from the first computer to an assigned connection handler from the connection handler pool;
formatting the object type data to a second electronic format; and
constructing a 3D model from the formatted object type data for each of the plurality of objects via the 3D modeling software component in the second computer, wherein converting the engineering data to an entity set object type comprises:
scanning the engineering data in the first electronic format for entity criteria for some of the plurality of objects, wherein the entity criteria comprises criteria that will be used to search for other objects to construct entity replacement commands;
forming an entity attribute transfer set in the second electronic format for the plurality of objects meeting the scanned entity criteria; and
transporting the entity attribute transfer set for the plurality of objects meeting the scanned entity criteria to a receiving program to interface with the 3D modeling software component.
11. The computer-implemented method of claim 10, wherein the formatting the object type data to a second electronic format comprises formatting to XML.
12. The computer-implemented method of claim 10, wherein each of the assigned object types are created from the object’s own associated data.
13. The computer-implemented method of claim 10, wherein the converting step comprises appending attributes derived from the engineering data to the associated object types.
14. The computer-implemented method of claim 10, wherein additional objects meeting the scanned entity criteria are located simultaneously while previously located objects meeting the scanned entity criteria are transported.
15. A computer-implemented method for utilizing engineering data from a computer-aided design (CAD) software component to generate technically accurate 3D models in connection with a 3D-modeling software component of a computer system, the computer-implemented method comprising:
receiving engineering data in a first electronic format from the CAD software component, wherein the engineering data includes a triangulated irregular network (TIN) model that defines a plurality of triangle objects which form a three-dimensional surface of a meshed object;
conducting a first scan of the engineering data for vertices of each of the plurality of triangle objects defined by the TIN model;
storing the vertices in a hash table, wherein each vertex is indexed in the hash table by a unique value;
generating a first transfer set comprising a command header and a count of vertices and faces of the triangle objects in a second electronic format;
transporting the first transfer set to a receiving program to interface with the 3D-modeling software component;
generating a second transfer set comprising a vertex array of vertex indexes based on the vertices stored in the hash table;
transporting the second transfer set to the 3D-modeling software component;
retrieving the vertex indexes from the vertex array for each of the plurality of triangle objects;
conducting a second scan of the engineering data to match a particular triangle object with corresponding vertex hash table indices, wherein data associated with the first scan is transported while the second scan is still in progress;
generating a third transfer set comprising face information of the plurality of triangle objects based on the second scan;
transporting the third transfer set to the 3D-modeling software component; and
generating a 3D model of the meshed object from the first, second, and third transfer sets transported to the 3D-modeling software component via a graphical user interface of the computer system.
16. The computer-implemented method of claim 15, wherein some of the plurality of triangle objects reference the same vertex.
17. The computer-implemented method of claim 15, wherein some of the plurality of triangle objects are reduced to a single hash table entry in the vertex array.
18. The computer-implemented method of claim 15, wherein the vertex array comprises an index of each of the vertices in the vertex array, and an associated vertex hash table index is matched to each of the plurality of triangle objects.

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. An apparatus comprising:
a multi-chip socket comprising:
a first cavity having a first support surface to support a first component including a first chip, the first support surface arranged to contact and support the first chip, and the first support surface being at a first height with respect to a reference plane;
a second cavity electrically coupled to the first cavity and having a second support surface to support a second component including a second chip, the second support surface arranged to contact and support the second chip, and the second support surface being at a second, different height with respect to the reference plane;
a first thermal interface to thermally contact a top surface of the first component;
a second thermal interface to thermally contact a top surface of the second component; and

a heat extraction device arranged to thermally connect to a top surface of the first thermal interface and a top surface of the second thermal interface, the top surfaces of the first thermal interface and the second thermal interface being coplanar.
2. The apparatus of claim 1, wherein the first chip includes a first integrated circuit (IC) chip, and the second chip includes a second IC chip.
3. The apparatus of claim 1, wherein the first height is a height of the first support surface above the reference plane, and the second height is a height of the second support surface above the reference plane.
4. The apparatus of claim 3, wherein the reference plane corresponds to a surface of a substrate on which the multi-chip socket is to be mounted.
5. The apparatus of claim 1, wherein the first height defines a first depth of the first cavity, and the second height defines a second, different depth of the second cavity.
6. The apparatus of claim 1, wherein the first thermal interface has a first thickness, and the second thermal interface has a second, different thickness, wherein the first thickness and the second thickness are provided such that the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.
7. The apparatus of claim 1, wherein the first height and the second height are provided such that the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.
8. A system, comprising:
a multi-chip socket including a first cavity and a second cavity;
a first component including a first integrated circuit (IC) chip disposed within the first cavity, wherein a first support surface of the first cavity is in a first plane, and the first support surface is in contact with and supports the first IC chip;
a second component including a second IC chip communicatively coupled to the first component and disposed within the second cavity, wherein a second support surface of the second cavity is in a second plane that is different than the first plane, and the second support surface is in contact with and supports the second IC chip;
a first thermal interface in contact with a top surface of the first component;
a second thermal interface in contact with a top surface of the second component; and
a single heat extraction device thermally connected to a top surface of the first thermal interface and a top surface of the second thermal interface, wherein the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.
9. The system of claim 8, wherein the first IC chip is a processor and the second IC chip is a memory device.
10. The system of claim 8, wherein the first IC chip is an application specific integrated circuit (ASIC) and the second IC chip is an electricaloptical (EO) engine.
11. The system of claim 8, further comprising a printed circuit board on which the multi-chip socket is disposed, wherein the first plane is at a first height above a surface of the printed circuit board, and the second plane is at a second, different height above the surface of the printed circuit board.
12. The system of claim 11, wherein the first height defines a first depth of the first cavity, and the second height defines a second, different depth of the second cavity.
13. The system of claim 8, wherein the first thermal interface has a first thickness, and the second thermal interface has a second, different thickness, wherein the first thickness and the second thickness are provided such that the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.
14. The system of claim 11, wherein the first height and the second height are provided such that the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.
15. A method comprising:
arranging a multi-chip socket on a circuit board, wherein the multi-chip socket comprises:
a first cavity having a first support surface to support a first component including a first chip, the first support surface arranged to contact and support the first chip, and the first support surface being at a first height with respect to a reference plane;
a second cavity having a second support surface to support a second component including a second chip, the second support surface arranged to contact and support the second chip, and the second support surface being at a second, different height with respect to the reference plane;
a first thermal interface in contact with a top surface of the first component;
a second thermal interface in contact with a top surface of the second component; and
a second thermal interface in contact with a top surface of the second component; and

thermally connecting a single heat extraction device to a top surface of the first thermal interface and a top surface of the second thermal interface, the top surfaces of the first thermal interface and the second thermal interface being coplanar.
16. The apparatus of claim 1, wherein the heat extraction device includes a single heat sink contacted to the top surface of the first thermal interface, and the top surface of the second thermal interface.
17. The system of claim 8, wherein the single heat extraction device includes a single heat sink thermally connected to the top surfaces of the first and second thermal interfaces.
18. The method of claim 15, wherein the single heat extraction device includes a single heat sink thermally connected to the top surfaces of the first and second thermal interfaces.
19. The method of claim 15, wherein the first thermal interface has a first thickness, and the second thermal interface has a second, different thickness, wherein the first thickness and the second thickness are provided such that the top surface of the first thermal interface and the top surface of the second thermal interface are coplanar.

1461124539-ce53ea16-f7d8-4591-b4ec-f446e4efb57d

1. A battery-powered mobile computing device comprising:
a battery to provide power;
a processor;
a Global Positioning System (GPS) component to obtain information about the geographic location of the device, wherein:
the information about the geographic location of the device obtained using the GPS component has a first degree of accuracy, and
obtaining information about the geographic location of the device using the GPS component consumes a first amount of battery power;
a wireless communication interface to obtain information about the geographic location of the device, wherein:
the information about the geographic location of the device obtained using the wireless communication interface has a second degree of accuracy that is less than the first degree of accuracy, and
obtaining information about the geographic location of the device using the wireless communication interface consumes a second amount of battery power that is less than the first amount of battery power; and
a memory storing instructions executable by the processor, the instructions including:
first instructions corresponding to a first application that utilizes information about a geographic location of the device;
second instructions corresponding to a second application that utilizes information about a geographic location of the device;
third instructions corresponding to a location updater module, the location updater module to request either the GPS component or the wireless communication interface to obtain information about the geographic location of the device; and
fourth instructions corresponding to a location services module, the location services module to:
register the first and second applications for access to information about the geographic location of the device;
determine whether the first or the second application is, or was recently, active; and
control the location updater module regarding whether to use the GPS unit or the wireless communication interface to obtain the information about the geographic location of the device based, at least in part, on a determination as to whether the first or the second application is, or was recently, active.
2. The battery-powered mobile computing device of claim 1 wherein the location services module controls the location updater module to use the GPS unit to obtain the information about the geographic location of the device if one or more of the applications that require information about the current geographic location of the device are active.
3. The battery-powered mobile computing device of claim 1 wherein the location services module controls the location updater module to use the wireless communication interface to obtain the information about the geographic location of the device if one or more of the applications that require information about the current geographic location of the device is not currently active and was not recently active.
4. The battery-powered mobile computing device of claim 3 wherein the wireless communication interface comprises a WiFi transceiver.
5. The battery-powered mobile computing device of claim 1 wherein the location services module controls the location updater module to request information about the geographical location of the device at a frequency that depends, at least in part, on an extent to which the device is moving.
6. The battery-powered mobile computing device of claim 1 wherein the location services module controls the location updater module to request information about the geographical location of the device at a frequency that depends, at least in part, on whether or not the device is determined to be substantially stationary.
7. The battery-powered mobile computing device of claim 1 comprising a power manager to determine a remaining level of battery power available in the device, wherein the second location services module controls the location updater module to request information about the geographical location of the device at a frequency that depends, at least in part, on the remaining level of battery power.
8. The battery-powered mobile computing device of claim 7 wherein the location services module controls the location updater module to update information about the geographical location of the device at a lower frequency if the remaining level of battery power drops below a predetermined amount.
9. A method of operating a battery-powered mobile computing device having a processor, a memory, and a battery, the method comprising:
determining, by the device, whether an application that is available on the device and that uses information about a current geographic location of the device is, or recently was, active;
using, by the device, a first location-determining technique to determine the geographic location of the device if the application is, or recently was, active, wherein the first location-determining technique uses a first amount of battery power; and
using, by the device, a second location-determining technique to determine the geographic location of the device if the application is not active and was not recently active, wherein the second location-determining technique uses a second amount of battery power that is less than the first amount of battery power.
10. The method of claim 9 wherein the first location-determining technique uses information from a GPS system.
11. The method of claim 10 wherein the second location-determining technique uses cell ID or a WiFi access point information.
12. The method of claim 9 wherein information about the geographic location of the device obtained using the first technique has a first degree of accuracy, and information about the geographic location of the device obtained using the second technique has a second degree of accuracy that is less than the first degree of accuracy.
13. The method of claim 9 wherein the application is considered to be active if the application is the focus of a graphical user interface on the device.
14. The method of claim 9 including requesting information about the geographical location of the device at a frequency that depends, at least in part, on an extent to which the device is moving.
15. The method of claim 9 including requesting information about the geographical location of the device at a frequency that depends, at least in part, on whether or not the device is determined to be substantially stationary.
16. The method of claim 9 including updating information about the geographical location of the device at a frequency that depends, at least in part, on a remaining level of battery power in the device.
17. The method of claim 16 including updating information about the geographical location of the device at a lower frequency if the remaining level of battery power drops below a predetermined amount.
18. A non-transitory computer-readable medium encoded with a computer program comprising instructions that, if executed by a processor of a mobile computing device, operate to cause the mobile computing device to perform operations comprising:
determining whether an application that is available on the device and that uses information about a current geographic location of the device is, or recently was, active;
using a first location-determining technique to determine the geographic location of the device if the application is, or recently was, active, wherein the first location-determining technique uses a first amount of battery power; and
using a second location-determining technique to determine the geographic location of the device if the application is not active and was not recently active, wherein the second location-determining technique uses a second amount of battery power that is less than the first amount of battery power.
19. The medium of claim 18 wherein the first location-determining technique uses information from a GPS system.
20. The medium of claim 19 wherein the second location-determining technique uses cell ID or WiFi access point information.
21. The medium of claim 18 wherein information about the geographic location of the device obtained using the first technique has a first degree of accuracy, and information about the geographic location of the device obtained using the second technique has a second degree of accuracy that is less than the first degree of accuracy.
22. The medium of claim 18 wherein the application is considered to be active if the application is the focus of a graphical user interface on the device.
23. The medium of claim 18 including instructions that, if executed, operate to cause the device to request information about the geographical location of the device at a frequency that depends, at least in part, on an extent to which the device is moving.
24. The medium of claim 18 including instructions that, when executed, operate to cause the device to request information about the geographical location of the device at a frequency that depends, at least in part, on whether or not the device is determined to be substantially stationary.
25. The medium of claim 18 including instructions that, if executed, operate to cause the device to update information about the geographical location of the device at a frequency that depends, at least in part, on a remaining level of battery power in the device.
26. The medium of claim 25 including instructions that, if executed, operate to cause the device to update information about the geographical location of the device at a lower frequency if the remaining level of battery power drops below a predetermined amount.
27. A battery-operated mobile computing device comprising:
a battery to provide power;
a processor;
a Global Positioning System (GPS) component to obtain information about the geographic location of the device, wherein obtaining information about the geographic location of the device using the GPS component consumes a first amount of battery power;
a wireless communication interface to obtain information about the geographic location of the device, wherein obtaining information about the geographic location of the device using the wireless communication interface consumes a second amount of battery power that is less than the first amount of battery power; and
a memory storing instructions executable by the processor, the instructions including:
first instructions corresponding to a first application that utilizes information about a geographic location of the device;
second instructions corresponding to a second application that utilizes information about a geographic location of the device;
third instructions corresponding to a location updater module, the location updater module to request either the GPS component or the wireless communication interface to obtain information about the geographic location of the device; and
fourth instructions corresponding to a location services module, the location services module to:
determine whether the first or the second application is, or was recently, active; and
control the location updater module regarding whether to use the GPS unit or the wireless communication interface to obtain the information about the geographic location of the device based, at least in part, on a determination as to whether the first or the second application is, or was recently, active.
28. The battery-operated mobile computing device of claim 27 comprising a power manager to determine a remaining level of battery power available in the device, wherein the information about the geographical location of the device is updated at a frequency that depends, at least in part, on the remaining level of battery power.
29. The battery-operated mobile computing device of claim 28 wherein the information about the geographical location of the device is updated at a first lower frequency if the remaining level of battery power drops below a first predetermined amount.
30. The battery-operated mobile computing device of claim 28 wherein the information about the geographical location of the device is updated at a second frequency lower than the first lower frequency if the remaining level of battery power drops below a second predetermined amount lower than the first predetermined amount.

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 fluid-ejection printhead die comprising:
a plurality of first fluid-ejection nozzles to eject fluid of a first type, the first fluid-ejection nozzles organized over a first row and a second row non-collinear to the first row;
a plurality of second fluid-ejection nozzles to eject fluid of a second type different than the first type, the second fluid-ejection nozzles organized over a third row and a fourth row non-collinear to the third row, the fourth row at least substantially collinear to the first row; and,
a mixing barrier at least substantially between the first row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles.
2. The fluid-ejection printhead die of claim 1, wherein the mixing barrier is to minimize mixing of the fluid of the first type with the fluid of the second type at least during wiping of the fluid-ejection printhead die.
3. The fluid-ejection, printhead die of claim 1, wherein the mixing barrier comprises a groove within a surface of the fluid-ejection printhead die.
4. The fluid-ejection printhead die of claim 1, wherein the mixing barrier comprises a protrusion extending from a surface of the fluid-ejection printhead die.
5. The fluid-ejection printhead die of claim 1, wherein the mixing barrier is a first mixing barrier, the first row is longer than the second row, the third row is longer than the fourth row, and the fluid-ejection printhead die further comprises:
a short edge to abut a corresponding short edge of another fluid-ejection printhead die, the second row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles ending at the short edge; and,
a second mixing barrier at the short edge and substantially between the second row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles.
6. The fluid-ejection printhead die of claim 5, wherein the second mixing barrier is at least substantially shaped as a triangle having a first corner and a second corner on the short edge, the triangle having a third corner between the second row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles.
7. The fluid-ejection printhead die of claim 1, wherein the mixing barrier is a first mixing barrier, the first row is longer than the second row, the third row is longer than the fourth row, and the fluid-ejection printhead die further comprises:
a short edge to abut a corresponding short edge of another fluid-ejection printhead die, the first row of the first fluid-ejection nozzles and the third row of the second fluid-ejection nozzles ending at the short edge; and,
a second mixing barrier at the short edge and substantially between the first row of the first fluid-ejection nozzles and the third row of the second fluid-ejection nozzles.
8. The fluid-ejection printhead die of claim 7, wherein the second mixing barrier is at least substantially shaped as a triangle having a first corner and a second corner on the short edge, the triangle having a third corner between the first row of the first fluid-ejection nozzles and the third row of the second fluid-ejection nozzles.
9. The fluid-ejection printhead die of claim 1, wherein the mixing barrier further extends between one or more of:
the first row of the first fluid-ejection nozzles and the third row of the second fluid-ejection nozzles;
the second row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles.
10. The fluid-ejection printhead die of claim 1, wherein the fluid-ejection printhead die is an inkjet-printing device printhead die, the fluid of the first type is ink of a first color, and the fluid of the second type is ink of a second color different than the first color.
11. A fluid-ejection device comprising:
a first fluid-ejection printhead die having a short edge; and,
a second fluid-ejection printhead die having a short edge abutting the short edge of the first fluid-ejection printhead die,
wherein each of the first and the second fluid-ejection printhead dies comprises:
a plurality of first fluid-ejection nozzles to eject fluid of a first type, the first fluid-ejection nozzles organized over a first row and a second row non-collinear to the first row;
a plurality of second fluid-ejection nozzles to eject fluid of a second type different than the first type, the second fluid-ejection nozzles organized over a third row and a fourth row non-collinear to the third row, the fourth row at least substantially collinear to the first row; and,
a mixing barrier at least substantially between the first row of the first fluid-ejection nozzles and the fourth row of the second fluid-ejection nozzles.
12. The fluid-ejection device of claim 11, wherein the mixing barrier of the first fluid-ejection printhead die is a first mixing barrier, and the mixing barrier of the second fluid-ejection printhead die is a second mixing barrier,
wherein the first row of the first fluid-ejection printhead die is longer than the second row of the first fluid-ejection printhead die, the third row of the first fluid-ejection printhead die is longer than the fourth row of the first fluid-ejection printhead die,
wherein the first row of the second fluid-ejection printhead die is longer than the second row of the second fluid-ejection printhead die, the third row of the second fluid-ejection printhead die is longer than the fourth row of the second fluid-ejection printhead die,
and wherein the first fluid-ejection printhead die further comprises:
a third mixing barrier at the short edge of the first fluid-ejection printhead die and substantially between the second row of the first fluid-ejection nozzles of the first fluid-ejection printhead die and the fourth row of the first fluid-ejection nozzles of the first fluid-ejection printhead die.
13. The fluid-ejection device of claim 12, wherein the second fluid-ejection printhead die further comprises:
a fourth mixing barrier at the short edge of the second fluid-ejection printhead die and substantially between the first row of the first fluid-ejection nozzles of the second fluid-ejection printhead die and the third row of the second fluid-ejection nozzles of the second fluid-ejection printhead die.
14. The fluid-ejection device of claim 11, wherein the fluid-ejection device is an inkjet-printing device, the fluid of the first type is ink of a first color, and the fluid of the second type is ink of a second color different than the first color.
15. A fluid-ejection printhead die comprising:
a plurality of first fluid-ejection nozzles to eject fluid of a first type, the first fluid-ejection nozzles organized over a first row and a second row non-collinear to the first row;
a plurality of second fluid-ejection nozzles to eject fluid of a second type different than the first type, the second fluid-ejection nozzles organized over a third row and a fourth row non-collinear to the third row, the fourth row at least substantially collinear to the first row; and,
means for minimizing, at least during wiping of the fluid-ejection printhead die, the fluid of the first type ejected by at least the first row of the first fluid-ejection nozzles from mixing with the fluid of the second type ejected by at least the fourth row of the second fluid-ejection nozzles.