/** * Handler for gas_pipe objects * $Id$ * $HeadURL$ * $Author$ * Created by hjl, SLSE, 2017-06-14 */ #pragma once #include #include "object_gas_pipe.h" #include "handler_base.h" namespace AreaEffectSimulation { class ObjectGasPipe; class HandlerGasPipe final : public HandlerBaseTmpl , protected Interface::Fts::GasPipeModifyRequestHandler , protected Interface::Fts::GasPipeRemoveRequestHandler { Q_OBJECT public: explicit HandlerGasPipe(MainHandler *mainHandler); ~HandlerGasPipe(); bool init(); int totalAreas() const override { return -1; } int totalAreasCentral() const override { return -1; } void recountActiveAreas() override {} private: // FTS methods void onGasPipeModifyRequest(const rti::core::SampleIdentity &cookie, const GasPipeModifyRequest &request) override; Core::FunctionReplyObject gasPipeCreateRequest(const GasPipeModifyRequest &request); Core::FunctionReplyObject gasPipeModifyRequest(const GasPipeModifyRequest &request); void onGasPipeRemoveRequest(const rti::core::SampleIdentity &cookie, const Core::RemoveElementRequest &request) override final; }; } // Namespace AreaEffectSimulation