Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | List of all members
Animal Struct Reference
Inheritance diagram for Animal:
Inheritance graph
[legend]

Public Types

enum  Kind {
  Kind::Unknown = 0, Kind::Dog = 100, Kind::Labrador, Kind::Chihuahua,
  Kind::LastDog = 199, Kind::Cat = 200, Kind::Panther, Kind::LastCat = 299
}
 

Public Member Functions

virtual ~Animal ()=default
 

Static Public Member Functions

static std::string name_of_kind (Kind kind)
 
static const std::type_info * type_of_kind (Kind kind)
 

Public Attributes

const Kind kind
 
const std::string name
 

Protected Member Functions

 Animal (const std::string &_name, Kind _kind)
 

Detailed Description

Definition at line 14 of file test_tagbased_polymorphic.cpp.

Member Enumeration Documentation

◆ Kind

enum Animal::Kind
strong
Enumerator
Unknown 
Dog 
Labrador 
Chihuahua 
LastDog 
Cat 
Panther 
LastCat 

Definition at line 21 of file test_tagbased_polymorphic.cpp.

Constructor & Destructor Documentation

◆ ~Animal()

virtual Animal::~Animal ( )
virtualdefault

◆ Animal()

Animal::Animal ( const std::string &  _name,
Kind  _kind 
)
inlineprotected

Definition at line 38 of file test_tagbased_polymorphic.cpp.

Member Function Documentation

◆ name_of_kind()

std::string Animal::name_of_kind ( Kind  kind)
static

Definition at line 114 of file test_tagbased_polymorphic.cpp.

◆ type_of_kind()

const std::type_info * Animal::type_of_kind ( Kind  kind)
static

Definition at line 85 of file test_tagbased_polymorphic.cpp.

Member Data Documentation

◆ kind

const Kind Animal::kind

Definition at line 34 of file test_tagbased_polymorphic.cpp.

◆ name

const std::string Animal::name

Definition at line 35 of file test_tagbased_polymorphic.cpp.


The documentation for this struct was generated from the following file:


gtsam
Author(s):
autogenerated on Tue Jul 4 2023 02:40:59