C++11 allows marking overridden method with `override`, which I'd suggest adding here. The compiler will then fail if one were to forget to derive from PipelineObserver correctly.