/** This file is a part of r0nk, atlas_moon, and rexy's matrix client Copyright (C) 2019 rexy712 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program. If not, see . */ #ifndef MATRIX_UPLOAD_INFO_HPP #define MATRIX_UPLOAD_INFO_HPP #include "raii/rjp_string.hpp" #include "raii/string.hpp" #include //size_t namespace matrix{ struct file_info{ raii::rjp_string fileurl; raii::string filename; raii::string mimetype; size_t filesize; }; struct image_info : public file_info{ using file_info::operator=; size_t width; size_t height; raii::rjp_string thumburl; size_t thumb_width; size_t thumb_height; size_t thumbsize; }; struct video_info : public image_info{ using image_info::operator=; }; struct audio_info : public file_info{ using file_info::operator=; }; } #endif