setAzimuth :: Catalog -> Int -> Azimuth -> IO ()
setAzimuth (Catalog catalog) fuel azimuth = do
  let az    = realToFrac (azimuth /~ degree)
      model = fromIntegral fuel
  [C.block| void {
      size_t w = FIRE_BYRAMS | FIRE_FLAME;
      Fire_SpreadAtAzimuth( $(void *catalog), $(size_t model), $(double az), w);
  } |]
setAzimuth :: Catalog -> Int -> Azimuth -> IO ()
setAzimuth (Catalog catalog) fuel azimuth = do
  let az    = realToFrac (azimuth /~ degree)
      model = fromIntegral fuel
  [C.block| void {
      size_t w = FIRE_BYRAMS | FIRE_FLAME;
      Fire_SpreadAtAzimuth( $(void *catalog), $(size_t model), $(double az), w);
  } |]
setAzimuth (Catalog catalog) fuel azimuth = do
  let az    = realToFrac (azimuth /~ degree)
      model = fromIntegral fuel
  [C.block| void {
      size_t w = FIRE_BYRAMS | FIRE_FLAME;
      Fire_SpreadAtAzimuth( $(void *catalog), $(size_t model), $(double az), w);
  } |]