OSDN Git Service

Add serialize() to Creature class.
[deeangband/Deeangband-new.git] / Deeangband / SavingTable.h
1 /*!
2  * @file SavingTable.h
3  * @brief \83Q\81[\83\80\92\86\82Ì\83Z\81[\83r\83\93\83O\83e\81[\83u\83\8b\82Ì\83v\83\8d\83g\83^\83C\83v
4  * @date 2013/12/11
5  * @author Deskull
6  * 2013 Sikabane Works.
7  */
8
9 #pragma once
10
11 #include "stdafx.h"
12 #include "Deeangband.h"
13
14 /*!
15  * @class SavingTable
16  * @brief \83Z\81[\83r\83\93\83O\83e\81[\83u\83\8b\83N\83\89\83X
17  */
18 class SavingTable
19 {
20 private:
21
22         AC armor;    /*!< \91\95\8db\83Z\81[\83u\92l */
23         EV evasion;  /*!< \89ñ\94ð\83Z\81[\83u\92l */
24         VO volition; /*!< \88Ó\8ev\83Z\81[\83u\92l */
25
26         friend class boost::serialization::access;
27         template<class Archive> void serialize(Archive &archive, const unsigned int) 
28         {
29                 archive & BOOST_SERIALIZATION_NVP(armor);
30                 archive & BOOST_SERIALIZATION_NVP(evasion);
31                 archive & BOOST_SERIALIZATION_NVP(volition);
32         }
33
34 public:
35
36         /*! 
37          * @brief SavingTable\83N\83\89\83X\82Ì\83R\83\93\83X\83g\83\89\83N\83^
38          * @param armor \91\95\8db\83Z\81[\83r\83\93\83O\92l
39          * @param evasion \89ñ\94ð\83Z\81[\83r\83\93\83O\92l
40          * @param volition \88Ó\8ev\83Z\81[\83r\83\93\83O\92l
41          */
42         SavingTable::SavingTable(BASE_STATUS armor, BASE_STATUS evasion, BASE_STATUS volition);
43
44         SavingTable::SavingTable(void);
45
46         SavingTable::~SavingTable(void);
47
48         void SavingTable::Set(BASE_STATUS armor, BASE_STATUS evasion, BASE_STATUS volition);
49
50         const AC SavingTable::GetArmor(void);
51
52         const EV SavingTable::GetEvasion(void);
53
54         const VO SavingTable::GetVolition(void);
55
56         /*!
57          * @brief +=\89\89\8eZ\8eq\82É\82æ\82é\8dÀ\95W\89Á\8eZ
58          * @param plus \89Á\8eZ\8c³
59          */
60         SavingTable& SavingTable::operator+=(const SavingTable& obj);
61
62 };