/
(class|struct)[\s]+[\w]+([\s]+[\w]+|)([\s]+[\w]+|)(\:\:[\s]*[\w]+|)(\:\:[\s]*[\w]+|)(\:\:[\s]*[\w]+|)[\s]*:[\s]*(public|private|protected)[\s]+[\w]+(\:\:[\s]+[\w]+|)(\,[\s]*(public|private|protected)[\s]+[\w]+(\:\:[\s]*[\w]+|)|)[.\s]*[\{.\s\w,]*DECLARE_CLASS_INFO
/
gm