Image copyright PA Media

Sir Rod Stewart has been charged by police after allegedly punching a security guard at a hotel in Florida.

A police report says the altercation occurred after the singer and his companions, including his son Sean, failed to gain access to a private event on New Year's Eve.

Sean allegedly pushed the security guard and Sir Rod struck his chest "with a closed fist", the report says.

Sir Rod and his son were both charged with "simple battery".

The security guard at the Breakers Palm Beach Hotel, named as Jessie Dixon, told officers that he saw a group of people near the check-in table of the private event in the children's area, trying to enter without permission.

Mr Dixon told police that the group "began to get loud and cause a scene", refusing to leave.

Sean Stewart got "nose to nose" with the security guard, according to the affidavit, who told him to back away.

The report then alleges that Sean Stewart, 39, shoved Mr Dixon backwards, before Sir Rod stepped towards the security guard and threw a punch, hitting him in the left ribcage.

Family were 'agitated'

The arresting officer says in the report that he made contact with Sir Rod, who said he and his family approached the check-in table to try to gain access to the event for their children.

According to the affidavit, Sir Rod told police that after the family were denied access, Mr Dixon became argumentative with them, causing his family to become "agitated".

Sir Rod, 74, apologised for his role in the incident, the officer's report says.

The officer says the altercation was witnessed by two other hotel employees, who signed witness statements confirming they saw the push by Sean Stewart and the punch by Sir Rod.

Video footage also revealed Sean Stewart and Sir Rod as the "primary aggressors" in the confrontation, according to the report.

Both father and son were charged and are due to appear at the Palm Beach County Criminal Justice Complex on 5 February.