From fcccedc5884a672eb66221d66fdda4755b4286ba Mon Sep 17 00:00:00 2001 From: Max Kellermann Date: Thu, 5 Sep 2013 18:19:17 +0200 Subject: Tag: move struct TagItem to TagItem.hxx --- Makefile.am | 1 + src/tag/Tag.hxx | 16 +--------------- src/tag/TagItem.hxx | 41 +++++++++++++++++++++++++++++++++++++++++ src/tag/TagPool.cxx | 2 +- 4 files changed, 44 insertions(+), 16 deletions(-) create mode 100644 src/tag/TagItem.hxx diff --git a/Makefile.am b/Makefile.am index 073eff11d..0c5a5b373 100644 --- a/Makefile.am +++ b/Makefile.am @@ -424,6 +424,7 @@ TAG_LIBS = \ libtag_a_SOURCES =\ src/tag/TagType.h \ src/tag/Tag.cxx src/tag/Tag.hxx \ + src/tag/TagItem.hxx \ src/tag/TagHandler.cxx src/tag/TagHandler.hxx \ src/tag/TagInternal.hxx \ src/tag/TagConfig.cxx src/tag/TagConfig.hxx \ diff --git a/src/tag/Tag.hxx b/src/tag/Tag.hxx index 51b6178be..fc9ad0bbb 100644 --- a/src/tag/Tag.hxx +++ b/src/tag/Tag.hxx @@ -21,27 +21,13 @@ #define MPD_TAG_HXX #include "TagType.h" +#include "TagItem.hxx" #include "gcc.h" #include #include -/** - * One tag value. It is a mapping of #tag_type to am arbitrary string - * value. Each tag can have multiple items of one tag type (although - * few clients support that). - */ -struct TagItem { - /** the type of this item */ - enum tag_type type; - - /** - * the value of this tag; this is a variable length string - */ - char value[sizeof(long)]; -} gcc_packed; - /** * The meta information about a song file. It is a MPD specific * subset of tags (e.g. from ID3, vorbis comments, ...). diff --git a/src/tag/TagItem.hxx b/src/tag/TagItem.hxx new file mode 100644 index 000000000..58a8a9e9e --- /dev/null +++ b/src/tag/TagItem.hxx @@ -0,0 +1,41 @@ +/* + * Copyright (C) 2003-2013 The Music Player Daemon Project + * http://www.musicpd.org + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 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 General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#ifndef MPD_TAG_ITEM_HXX +#define MPD_TAG_ITEM_HXX + +#include "TagType.h" +#include "gcc.h" + +/** + * One tag value. It is a mapping of #tag_type to am arbitrary string + * value. Each tag can have multiple items of one tag type (although + * few clients support that). + */ +struct TagItem { + /** the type of this item */ + enum tag_type type; + + /** + * the value of this tag; this is a variable length string + */ + char value[sizeof(long)]; +} gcc_packed; + +#endif diff --git a/src/tag/TagPool.cxx b/src/tag/TagPool.cxx index 5a0b33c47..57a9137a7 100644 --- a/src/tag/TagPool.cxx +++ b/src/tag/TagPool.cxx @@ -19,7 +19,7 @@ #include "config.h" #include "TagPool.hxx" -#include "Tag.hxx" +#include "TagItem.hxx" #include -- cgit v1.2.3