+/* Return the next facing in the framedata's facing list, and reset the\r
+ 'nextmirror' head to mirrorlist, so that 'ir_framedata_nextmirror' will now\r
+ refer to the second facing in the framedata */\r
+apc_facing ir_framedata_firstfacing\r
+( union ir_setdata_t* framedata )\r
+{ assert_framedata(framedata);\r
+ framedata->mapsheet.nextmirror = framedata->mapsheet.mirrorlist;\r
+ return framedata->mapsheet.facing;\r
+}\r
+\r
+/* Return the next facing for this framedata, incrementing the 'nextmirror'\r
+ head. Returns FACING_MAX when there are no more facings to return. */\r
+apc_facing ir_framedata_nextfacing\r
+( union ir_setdata_t* framedata )\r
+{ apc_facing facing;\r
+ assert_framedata(framedata);\r
+ if (framedata->mapsheet.nextmirror == NULL)\r
+ return FACING_MAX;\r
+ facing = framedata->mapsheet.nextmirror->facing;\r
+ framedata->mapsheet.nextmirror = framedata->mapsheet.nextmirror->nextsib;\r
+ return facing;\r
+}\r