b9ead5a6d7cba16cce5179155278f09e90c69be3
[NovacoinLibrary.git] / Novacoin / CScriptID.cs
1 \feff/**
2 *  Novacoin classes library
3 *  Copyright (C) 2015 Alex D. (balthazar.ad@gmail.com)
4
5 *  This program is free software: you can redistribute it and/or modify
6 *  it under the terms of the GNU Affero General Public License as
7 *  published by the Free Software Foundation, either version 3 of the
8 *  License, or (at your option) any later version.
9
10 *  This program is distributed in the hope that it will be useful,
11 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
12 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 *  GNU Affero General Public License for more details.
14
15 *  You should have received a copy of the GNU Affero General Public License
16 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
17 */
18
19 namespace Novacoin
20 {
21     /// <summary>
22     /// Represents the script identifier. Internal value is calculated as Hash160(script).
23     /// </summary>
24     public class CScriptID : uint160
25     {
26         public CScriptID() : base()
27         {
28         }
29
30         public CScriptID(CScriptID KeyID) : base(KeyID)
31         {
32         }
33
34         public CScriptID(uint160 pubKeyHash) : base(pubKeyHash)
35         {
36         }
37
38         public CScriptID(byte[] hashBytes) : base(hashBytes)
39         {
40         }
41
42         /// <summary>
43         /// Generate Pay-to-ScriptHash address
44         /// </summary>
45         /// <returns>Base58 formatted novacoin address</returns>
46         public override string ToString()
47         {
48             return (new CNovacoinAddress(this)).ToString();
49         }
50
51     }
52 }