The Layers of SDL++
Right now SDL++ is a hodge-podge of ideas, but I would like to cleanly separate the additional functionality (starting with the extended event system) from the "raw" C++ code that interfaces with the SDL API. So, the first layer would map SDL_* to SDL::* without changing _any_ functionality (the "C++ SDL type layer"). The second layer would add exceptions around the existing functionality (the "C++ SDL exception layer"). The third layer will wrap SDL types into resource-managed classes. The fourth layer will add extended functionality, like the events subsystem (the "C++ supercharged SDL layer"). Clients should be able to exclude any higher-level layers if they so desire, but I'm open to suggestions.
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Essential
- Drafter:
- None
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Related branches
Related bugs
Sprints
Whiteboard
I have been looking more and more at <a href="http://
The following statement sticks out: "Game software usually disables exception handling." The paper follows up with some valid reasons why games disable exception handling. The biggest problem I see are unhandled exceptions. If our client's game completely unravels because a programmer forgot to include exception-handling code, then this will have a huge impact on the perception of the players.