Gnash
0.8.11dev
Main Page
Related Pages
Namespaces
Classes
Files
Examples
File List
File Members
libmedia
Id3Info.h
Go to the documentation of this file.
1
// Id3Info.h: Container for Id3Info data
2
//
3
// Copyright (C) 2007, 2008, 2009, 2010, 2011, 2012
4
// Free Software Foundation, Inc.
5
//
6
// This program is free software; you can redistribute it and/or modify
7
// it under the terms of the GNU General Public License as published by
8
// the Free Software Foundation; either version 3 of the License, or
9
// (at your option) any later version.
10
//
11
// This program is distributed in the hope that it will be useful,
12
// but WITHOUT ANY WARRANTY; without even the implied warranty of
13
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
// GNU General Public License for more details.
15
//
16
// You should have received a copy of the GNU General Public License
17
// along with this program; if not, write to the Free Software
18
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19
20
#ifndef GNASH_MEDIA_ID3INFO_H
21
#define GNASH_MEDIA_ID3INFO_H
22
23
#include <boost/optional.hpp>
24
#include <string>
25
26
namespace
gnash {
27
namespace
media {
28
30
//
32
struct
Id3Info
33
{
34
boost::optional<std::string>
name
;
35
boost::optional<std::string>
album
;
36
boost::optional<int>
year
;
37
};
38
40
//
46
template
<
typename
T>
47
inline
void
48
setId3Info
(boost::optional<T>
Id3Info
::*member,
T
const
& val,
49
boost::optional<Id3Info>& obj)
50
{
51
if
(!obj) obj =
Id3Info
();
52
((*obj).*member) = val;
53
}
54
55
}
56
}
57
58
#endif
Generated on Tue Jan 28 2014 17:18:07 for Gnash by
1.8.4