The Battle for Wesnoth  1.19.4+dev
Public Member Functions | Private Attributes | Friends | List of all members
halo::halo_record Class Reference

RAII object which manages a halo. More...

#include <halo.hpp>

Public Member Functions

 halo_record (const halo_record &)=delete
 
halo_recordoperator= (const halo_record &)=delete
 
 halo_record ()
 halo::halo_record implementation More...
 
 halo_record (int id, const std::shared_ptr< halo_impl > &my_manager)
 
 ~halo_record ()
 
bool valid () const
 

Private Attributes

int id_
 
std::weak_ptr< halo_implmy_manager_
 

Friends

class manager
 

Detailed Description

RAII object which manages a halo.

When it goes out of scope it removes the corresponding halo entry.

Definition at line 76 of file halo.hpp.

Constructor & Destructor Documentation

◆ halo_record() [1/3]

halo::halo_record::halo_record ( const halo_record )
delete

◆ halo_record() [2/3]

halo::halo_record::halo_record ( )

halo::halo_record implementation

Definition at line 457 of file halo.cpp.

◆ halo_record() [3/3]

halo::halo_record::halo_record ( int  id,
const std::shared_ptr< halo_impl > &  my_manager 
)

Definition at line 462 of file halo.cpp.

◆ ~halo_record()

halo::halo_record::~halo_record ( )

Definition at line 467 of file halo.cpp.

References id_, my_manager_, and valid().

Member Function Documentation

◆ operator=()

halo_record& halo::halo_record::operator= ( const halo_record )
delete

◆ valid()

bool halo::halo_record::valid ( ) const
inline

Definition at line 86 of file halo.hpp.

References id_, my_manager_, and halo::NO_HALO.

Referenced by ~halo_record().

Friends And Related Function Documentation

◆ manager

friend class manager
friend

Definition at line 90 of file halo.hpp.

Member Data Documentation

◆ id_

int halo::halo_record::id_
private

Definition at line 92 of file halo.hpp.

Referenced by valid(), and ~halo_record().

◆ my_manager_

std::weak_ptr<halo_impl> halo::halo_record::my_manager_
private

Definition at line 93 of file halo.hpp.

Referenced by valid(), and ~halo_record().


The documentation for this class was generated from the following files: