Max-CQI scheduler

user = { CQI, RBG }
data = { UE_ID    }
rbg  = { RB[]     }

data[] buffer
data[] ue_data
rbg [] blocks
user[] users

user get_ue_max_cqi ()
  ue = users[0]

  for i in users do
    if ue.CQI < i.CQI then
	  ue = i
    fi
  done
end

while is_there_free_ressources_block_group do
  ue = get_ue_max_cqi ()

  if buffer.has_data_for ( ue ) not null
    rbg = get_free_ressources_block_group ()
    ue.RBG.add ( rbg )
  fi
done

for ue in users do
  for b in nb_bits_per_sequence do
    ue_data[b] = buffer.get_bit(ue)
  done

  ue.datas_to_transmit = ue_data
done