Develop Biology
The language of life
Symmetry.h
Go to the documentation of this file.
1
/*
2
* This file is a part of the Biology project by eons LLC.
3
* Biology (aka Develop Biology) is a framework for approaching software
4
* development from a natural sciences perspective.
5
*
6
* Copyright (C) 2022 Séon O'Shannon & eons LLC
7
*
8
* This program is free software: you can redistribute it and/or modify
9
* it under the terms of the GNU Affero General Public License as
10
* published by the Free Software Foundation, either version 3 of the
11
* License, or (at your option) any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU Affero General Public License for more details.
17
*
18
* You should have received a copy of the GNU Affero General Public License
19
* along with this program. If not, see <https://www.gnu.org/licenses/>.
20
*/
21
22
#pragma once
23
24
#include "
bio/physical/Symmetry.h
"
25
#include "
bio/physical/common/Class.h
"
26
#include "
bio/chemical/structure/motif/LinearMotif.h
"
27
#include "
bio/chemical/structure/Structure.h
"
28
#include "
bio/chemical/common/Class.h
"
29
30
namespace
bio
{
31
namespace
chemical {
32
37
class
Symmetry
:
38
public
physical::Symmetry
,
39
public
LinearMotif
< Symmetry* >,
40
public
chemical::Class
< Symmetry >,
41
virtual
public
Structure
42
{
43
public
:
44
48
BIO_DISAMBIGUATE_ALL_CLASS_METHODS
(chemical,
49
Symmetry
)
50
51
BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS
(chemical,
52
Symmetry
,
53
&physical::SymmetryPerspective::Instance())
54
55
59
Symmetry
(
60
Name
name,
61
Name
type
62
);
63
68
Symmetry
(
69
Name
name,
70
SymmetryType
type
71
);
72
77
Symmetry
(
78
StandardDimension
id
,
79
Name
type
80
);
81
86
Symmetry
(
87
StandardDimension
id
,
88
SymmetryType
type
89
);
90
94
virtual ~
Symmetry
();
95
};
96
97
}
//chemical namespace
98
}
//bio namespace
BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS
#define BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS(ns, class,...)
Definition:
ConstructorMacros.h:38
LinearMotif.h
Structure.h
Class.h
bio::chemical::Class
Definition:
Class.h:49
bio::chemical::LinearMotif
Definition:
LinearMotif.h:58
bio::chemical::Structure
Definition:
Structure.h:41
bio::chemical::Symmetry
Definition:
Symmetry.h:42
bio::chemical::Symmetry::type
Name type
Definition:
Symmetry.h:62
bio::chemical::Symmetry::BIO_DISAMBIGUATE_ALL_CLASS_METHODS
BIO_DISAMBIGUATE_ALL_CLASS_METHODS(chemical, Symmetry) BIO_DEFAULT_IDENTIFIABLE_CONSTRUCTORS(chemical
bio::physical::Symmetry
Definition:
Symmetry.h:34
bio
Definition:
Cell.h:31
bio::Name
const char * Name
Definition:
Types.h:46
Symmetry.h
Class.h
inc
bio
chemical
Symmetry.h
Generated by
1.9.4