Line data Source code
1 : /* Copyright (C) 2017 Wildfire Games.
2 : * This file is part of 0 A.D.
3 : *
4 : * 0 A.D. is free software: you can redistribute it and/or modify
5 : * it under the terms of the GNU General Public License as published by
6 : * the Free Software Foundation, either version 2 of the License, or
7 : * (at your option) any later version.
8 : *
9 : * 0 A.D. is distributed in the hope that it will be useful,
10 : * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 : * GNU General Public License for more details.
13 : *
14 : * You should have received a copy of the GNU General Public License
15 : * along with 0 A.D. If not, see <http://www.gnu.org/licenses/>.
16 : */
17 :
18 : #include "precompiled.h"
19 :
20 : #include "HashSerializer.h"
21 :
22 13 : CHashSerializer::CHashSerializer(const ScriptInterface& scriptInterface) :
23 13 : CBinarySerializer<CHashSerializerImpl>(scriptInterface)
24 : {
25 13 : }
26 :
27 18 : size_t CHashSerializer::GetHashLength()
28 : {
29 18 : return m_Impl.GetHashLength();
30 : }
31 :
32 13 : const u8* CHashSerializer::ComputeHash()
33 : {
34 13 : return m_Impl.ComputeHash();
35 : }
36 :
37 18 : size_t CHashSerializerImpl::GetHashLength()
38 : {
39 18 : return HashFunc::DIGESTSIZE;
40 : }
41 :
42 13 : const u8* CHashSerializerImpl::ComputeHash()
43 : {
44 13 : m_Hash.Final(m_HashData);
45 13 : return m_HashData;
46 : }
|