#pragma once #include "activity.h" #include "vehicles/vehicle.h" template class Activity::Of : public Activity { void apply(Vehicle * v, TickDuration dur) override { if (auto tv = dynamic_cast *>(v)) { tv->doActivity(static_cast(this), dur); } } };