/* * Copyright (c) 2017 TOYOTA MOTOR CORPORATION * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ #ifndef ALLOCATE_LIST_HPP #define ALLOCATE_LIST_HPP #include #include "windowmanager-client.hpp" namespace wm { class AllocateRequestList { public: AllocateRequestList(); ~AllocateRequestList(); AllocateRequestList(const AllocateRequestList &obj) = delete; typedef std::function onEndDraw; typedef std::function onReverted; // Client Database Interface void addClient(WMClient* client); WMClient* loopUpClient(const char* appid); // Request Interface bool hasRequestingApp(const char *appid); void revertRequestingState(); void removeAllRequesting(); bool addRequest(WMClient *, onEndDraw, onReverted); //void revertRequestingState();//??? /* bool queue(int request_num); bool pushTop(int request_num); bool dequeue(); void deleteAllElement(); void removeElement(int request_num); bool hasElement(int request_num); */ private: std::vector requestQueue; }; } #endif // ALLOCATE_LIST_HPP