Develop Biology
The language of life
bio::physical::Symmetry Class Reference

#include <Symmetry.h>

+ Inheritance diagram for bio::physical::Symmetry:
+ Collaboration diagram for bio::physical::Symmetry:

Public Member Functions

 Symmetry (Name name, Name type)
 
 Symmetry (Name name, Name type)
 
 Symmetry (Name name, SymmetryType type)
 
 Symmetry (Name name, SymmetryType type)
 
 Symmetry (StandardDimension id, Name type)
 
 Symmetry (StandardDimension id, SymmetryType type)
 
virtual ~Symmetry ()
 
virtual ~Symmetry ()
 
virtual ByteStreamAccessValue ()
 
 AddSymmetry (Symmetry *symmetry)
 
 BIO_DISAMBIGUATE_ALL_CLASS_METHODS (physical, Symmetry) Symmetry()
 
Name GetType () const
 
const Identifiable< SymmetryType > & GetType () const
 
virtual const ByteStreamGetValue () const
 
void SetType (Name type)
 
void SetType (SymmetryType type)
 
 SetValue (const ByteStream &bytes)
 
virtual void SetValue (const ByteStream &bytes)
 
- Public Member Functions inherited from bio::physical::Identifiable< SymmetryType >
 BIO_DISAMBIGUATE_ALL_CLASS_METHODS (physical, Identifiable< SymmetryType >) explicit Identifiable(Perspective< SymmetryType > *perspective
 
void CloneIntoName (Name name)
 
- Public Member Functions inherited from bio::physical::Observer< Perspective< SymmetryType > >
 Observer (const Observer &other)
 
 Observer (Perspective *perspective=NULL)
 
virtual ~Observer ()
 
virtual PerspectiveGetPerspective () const
 
virtual void SetPerspective (Perspective *perspective)
 
- Public Member Functions inherited from bio::physical::Class< Identifiable< SymmetryType > >
 Class (Identifiable< SymmetryType > *object, Symmetry *symmetry=NULL)
 
virtual ~Class ()
 
virtual WaveAsWave ()
 
virtual const WaveAsWave () const
 
virtual WaveClone () const
 
Identifiable< SymmetryType > * Convert (Wave *wave)
 
virtual operator Identifiable< SymmetryType > * ()
 
virtual operator Wave * ()
 
- Public Member Functions inherited from bio::physical::Wave
 Wave (Symmetry *symmetry=NULL)
 
virtual ~Wave ()
 
virtual chemical::AtomAsAtom ()
 
virtual const chemical::AtomAsAtom () const
 
virtual WaveAsWave ()
 
virtual const WaveAsWave () const
 
virtual Code Attenuate (const Wave *other)
 
virtual WaveClone () const
 
virtual WaveDemodulate ()
 
virtual const WaveDemodulate () const
 
virtual Code Disattenuate (const Wave *other)
 
virtual Properties GetProperties () const
 
virtual WaveModulate (Wave *signal)
 
virtual Waveoperator* ()
 
virtual const Waveoperator* () const
 
virtual Waveoperator* (Wave *signal)
 
virtual void operator+ (const Wave *other)
 
virtual void operator- (const Wave *other)
 
virtual void operator| (Symmetry *symmetry)
 
virtual Code Reify (Symmetry *symmetry)
 
virtual SymmetrySpin () const
 
- Public Member Functions inherited from bio::physical::Identifiable< StandardDimension >
 BIO_DISAMBIGUATE_ALL_CLASS_METHODS (physical, Identifiable< StandardDimension >) explicit Identifiable(Perspective< StandardDimension > *perspective
 
void CloneIntoName (Name name)
 
- Public Member Functions inherited from bio::physical::Observer< Perspective< StandardDimension > >
 Observer (const Observer &other)
 
 Observer (Perspective *perspective=NULL)
 
virtual ~Observer ()
 
virtual PerspectiveGetPerspective () const
 
virtual void SetPerspective (Perspective *perspective)
 
- Public Member Functions inherited from bio::physical::Class< Identifiable< StandardDimension > >
 Class (Identifiable< StandardDimension > *object, Symmetry *symmetry=NULL)
 
virtual ~Class ()
 
virtual WaveAsWave ()
 
virtual const WaveAsWave () const
 
virtual WaveClone () const
 
Identifiable< StandardDimension > * Convert (Wave *wave)
 
virtual operator Identifiable< StandardDimension > * ()
 
virtual operator Wave * ()
 

Protected Attributes

Name m_name
 
Identifiable< SymmetryType > m_type
 
ByteStream m_value
 
- Protected Attributes inherited from bio::VirtualBase
bool m_hasBeenInitialized
 
- Protected Attributes inherited from bio::physical::Class< Identifiable< SymmetryType > >
Identifiable< SymmetryType > * m_object
 
- Protected Attributes inherited from bio::physical::Wave
Wavem_signal
 
Symmetrym_symmetry
 
- Protected Attributes inherited from bio::physical::Class< Identifiable< StandardDimension > >
Identifiable< StandardDimension > * m_object
 

Additional Inherited Members

- Public Types inherited from bio::physical::Identifiable< SymmetryType >
typedef SymmetryType Id
 
typedef std::vector< IdIds
 
- Public Types inherited from bio::physical::Observer< Perspective< SymmetryType > >
typedef Perspective< SymmetryType > Perspective
 
- Public Types inherited from bio::physical::Identifiable< StandardDimension >
typedef StandardDimension Id
 
typedef std::vector< IdIds
 
- Public Types inherited from bio::physical::Observer< Perspective< StandardDimension > >
typedef Perspective< StandardDimension > Perspective
 
- Static Public Member Functions inherited from bio::physical::Wave
static Properties GetResonanceBetween (const Wave *wave, const Properties &properties)
 
static Properties GetResonanceBetween (const Wave *wave1, const Wave *wave2)
 
static Properties GetResonanceBetween (ConstWaves waves)
 
- Public Attributes inherited from bio::physical::Identifiable< SymmetryType >
Id m_id
 
- Public Attributes inherited from bio::physical::Identifiable< StandardDimension >
Id m_id
 
- Protected Member Functions inherited from bio::physical::Observer< Perspective< SymmetryType > >
virtual void InitializeImplementation (ByteStreams args)
 
- Protected Member Functions inherited from bio::VirtualBase
 VirtualBase ()
 
virtual ~VirtualBase ()
 
void Initialize (ByteStream arg1)
 
void Initialize (ByteStream arg1, ByteStream arg2)
 
void Initialize (ByteStream arg1, ByteStream arg2, ByteStream arg3)
 
void Initialize (ByteStreams args)
 
virtual void InitializeImplementation (ByteStreams args)=0
 
- Protected Member Functions inherited from bio::physical::Observer< Perspective< StandardDimension > >
virtual void InitializeImplementation (ByteStreams args)
 

Detailed Description

physical::Symmetry only contains a Name, a type, and a value. See SymmetryTypes.h for what types of Symmetry are available on a physical level. Both Symmetry and SymmetryTypes are intended to grow with each namespace, as the complexity of what is being Rotated grows.

Definition at line 32 of file Symmetry.h.

Constructor & Destructor Documentation

◆ Symmetry() [1/6]

bio::physical::Symmetry::Symmetry ( Name  name,
Name  type 
)

Definition at line 37 of file Symmetry.cpp.

41 :
43 m_type(
44 type,
45 &SymmetryTypePerspective::Instance())
46{
48 name,
49 &SymmetryPerspective::Instance()
50 );
51}
void Initialize(ByteStreams args)
Definition: VirtualBase.cpp:40
Identifiable< SymmetryType > m_type
Definition: Symmetry.h:133

References bio::VirtualBase::Initialize().

◆ Symmetry() [2/6]

bio::physical::Symmetry::Symmetry ( Name  name,
SymmetryType  type 
)

Definition at line 53 of file Symmetry.cpp.

57 :
59 m_type(
60 type,
61 &SymmetryTypePerspective::Instance())
62{
64 name,
65 &SymmetryPerspective::Instance()
66 );
67}

References bio::VirtualBase::Initialize().

◆ ~Symmetry() [1/2]

bio::physical::Symmetry::~Symmetry ( )
virtual

Reimplemented in bio::chemical::Symmetry.

Definition at line 101 of file Symmetry.cpp.

102{
103}

◆ Symmetry() [3/6]

bio::physical::Symmetry::Symmetry ( Name  name,
Name  type 
)
Parameters
name
type

◆ Symmetry() [4/6]

bio::physical::Symmetry::Symmetry ( Name  name,
SymmetryType  type 
)
Parameters
name
type

◆ Symmetry() [5/6]

bio::physical::Symmetry::Symmetry ( StandardDimension  id,
Name  type 
)
Parameters
id
type

Definition at line 69 of file Symmetry.cpp.

73 :
75 m_type(
76 type,
77 &SymmetryTypePerspective::Instance())
78{
80 id,
81 &SymmetryPerspective::Instance()
82 );
83}

References bio::VirtualBase::Initialize().

◆ Symmetry() [6/6]

bio::physical::Symmetry::Symmetry ( StandardDimension  id,
SymmetryType  type 
)
Parameters
id
type

Definition at line 85 of file Symmetry.cpp.

89 :
91 m_type(
92 type,
93 &SymmetryTypePerspective::Instance())
94{
96 id,
97 &SymmetryPerspective::Instance()
98 );
99}

References bio::VirtualBase::Initialize().

◆ ~Symmetry() [2/2]

virtual bio::physical::Symmetry::~Symmetry ( )
virtual

Reimplemented in bio::chemical::Symmetry.

Member Function Documentation

◆ AccessValue()

ByteStream * bio::physical::Symmetry::AccessValue ( )
virtual

Get the m_value of *this for direct editing.

Returns
m_value for writing.

Definition at line 130 of file Symmetry.cpp.

131{
132 return &m_value;
133}
ByteStream m_value
Definition: Symmetry.h:60

References m_value.

Referenced by bio::physical::Filterable::Spin(), bio::physical::Periodic::Spin(), and bio::physical::Quantum< T >::Spin().

◆ AddSymmetry()

bio::physical::Symmetry::AddSymmetry ( Symmetry symmetry)

◆ BIO_DISAMBIGUATE_ALL_CLASS_METHODS()

bio::physical::Symmetry::BIO_DISAMBIGUATE_ALL_CLASS_METHODS ( physical  ,
Symmetry   
)

Ensure virtual methods point to Class implementations.

◆ GetType() [1/2]

const Identifiable< SymmetryType > & bio::physical::Symmetry::GetType ( ) const
inline

Definition at line 48 of file Symmetry.h.

49 {
50 return Identifiable< SymmetryType >::GetName();
51 }

◆ GetType() [2/2]

const Identifiable< SymmetryType > & bio::physical::Symmetry::GetType ( ) const

With Symmetry, we make "Type" what is Identifiable and Name ancillary.

Returns
The Type of *this, akan Identifiable<SymmetryType>::GetName().

◆ GetValue()

const ByteStream & bio::physical::Symmetry::GetValue ( ) const
virtual

Get the m_value of *this.

Returns
m_value for read only.

Definition at line 125 of file Symmetry.cpp.

126{
127 return m_value;
128}

References m_value.

Referenced by bio::physical::Filterable::Reify(), bio::physical::Periodic::Reify(), and bio::physical::Quantum< T >::Reify().

◆ SetType() [1/2]

void bio::physical::Symmetry::SetType ( Name  type)

Set the type of *this.

Parameters
type

Definition at line 115 of file Symmetry.cpp.

116{
117 m_type.SetName(type);
118}

References m_type.

◆ SetType() [2/2]

void bio::physical::Symmetry::SetType ( SymmetryType  type)

Set the type of *this.

Parameters
type

Definition at line 110 of file Symmetry.cpp.

111{
112 m_type.SetId(type);
113}

References m_type.

◆ SetValue() [1/2]

void bio::physical::Symmetry::SetValue ( const ByteStream bytes)

Definition at line 120 of file Symmetry.cpp.

121{
122 m_value = bytes;
123}

References m_value.

◆ SetValue() [2/2]

virtual void bio::physical::Symmetry::SetValue ( const ByteStream bytes)
virtual

Set the m_value of *this.

Parameters
bytes

Member Data Documentation

◆ m_name

Name bio::physical::Symmetry::m_name
protected

Definition at line 59 of file Symmetry.h.

◆ m_type

Identifiable< SymmetryType > bio::physical::Symmetry::m_type
protected

Definition at line 133 of file Symmetry.h.

Referenced by SetType().

◆ m_value

ByteStream bio::physical::Symmetry::m_value
protected

Definition at line 60 of file Symmetry.h.

Referenced by AccessValue(), GetValue(), and SetValue().


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