Usually windmills occur with the king on the back rank and a rook discovering check against it while roaming back and forth on the next rank forward. But they also can run in the other direction, with the rook running amok up and down a file.
In this position there again is no kernel of a discovery yet in place for White. But Qg7+ is a natural move to consider; it’s close to checkmate, as it moves a protected queen up next to Black’s king. Black’s only legal response is RxQ. Now the stage is set for the creation of a windmill: White has a rook and bishop pointed at the square in front of Black's king, which has little room to move. Thus RxRg7+ leaves Black’s king only one place to go—h8—and also sets up discovered check by masking White’s b2 bishop with his rook. By sliding his rook back and forth between g7 and various Black targets, White can create havoc while Black stays busy fending off checks. It starts with RxBg6+; Black's king goes to h7. White plays Rg7+, and Black has to move his king back to h8, resetting the pattern. Now what? White plays Rxh6—and it’s checkmate. A familiar lesson repeats: never forget that your first objective, where possible, is not to take material but to mate.
Now note a possible wrinkle. After White’s first exploits the windmill with RxB+, Black has another option besides moving his king back to h7. He can interpose his f8 rook at f6, blocking the check from White’s bishop. The interposing rook is guarded by its queen, but that is not security enough because at this point White attacks f6 twice—with both his bishop and his rook. Thus White replies BxR+; Black recaptures QxB; and now Black loses his queen to RxQ. Black has no pieces left, while White still has his rooks and can force mate soon. But it’s worth seeing the general point, which is that when Black interposes rather than playing into White’s hands by moving his king, he may unexpectedly disrupt the flow of the windmill. In another game this sort of interposition might save a game rather than just forestalling doom.