copyleft: gplv3 added and set repo to public
[calu.git] / 3c_disasm / uint32_from_hex.hpp
1 /*   `Deep Thought', a softcore CPU implemented on a FPGA
2
3     Copyright (C) 2010 Markus Hofstaetter <markus.manrow@gmx.at>
4     Copyright (C) 2010 Martin Perner <e0725782@student.tuwien.ac.at>
5     Copyright (C) 2010 Stefan Rebernig <stefan.rebernig@gmail.com>
6     Copyright (C) 2010 Manfred Schwarz <e0725898@student.tuwien.ac.at>
7     Copyright (C) 2010 Bernhard Urban <lewurm@gmail.com>
8
9     This program is free software: you can redistribute it and/or modify
10     it under the terms of the GNU General Public License as published by
11     the Free Software Foundation, either version 3 of the License, or
12     (at your option) any later version.
13
14     This program is distributed in the hope that it will be useful,
15     but WITHOUT ANY WARRANTY; without even the implied warranty of
16     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17     GNU General Public License for more details.
18
19     You should have received a copy of the GNU General Public License
20     along with this program.  If not, see <http://www.gnu.org/licenses/>. */
21
22 #ifndef __UINT32_FROM_HEX_H__
23 #define __UINT32_FROM_HEX_H__
24
25 class uint32_from_hex   // For use with boost::lexical_cast
26 {
27         typedef unsigned int uint32;
28         uint32 value;
29         public:
30                 operator uint32() const {
31                         return value;
32                 }
33                 friend std::istream& operator>>(std::istream& in, uint32_from_hex& outValue)
34                 {
35                         in >> std::hex >> outValue.value;
36                         return in;
37                 }
38 };
39
40 #endif