Various coding standards issues, I'll flag once then not comment on again.

-   bracketing style
-   convention is to prefix class member variables with _ (underscore) so it is clear when reading code that it is a class member
-   in a few places the return parameter is split away from a function name in the function definition and the function parameters are also split on to a new line - our convention is to keep everything on the same line, but if necessary to keep within line length limits, add line breaks after each parameter and line up parameters vertically
-   indentation switches to 4 spaces in some places