GranOO  3.0
A robust and versatile workbench to build 3D dynamic simulations based on the Discrete Element Method
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
GranOO3::Core::Base Class Reference

#include <Base.hpp>

Inheritance diagram for GranOO3::Core::Base:
Inheritance graph
[legend]

Public Member Functions

virtual ~Base ()
 
virtual std::string info () const
 
size_t numID () const
 
size_t uID () const
 
void set_numID (size_t val)
 
void clear_numID ()
 
Physic::Materialget_mat () const
 
void set_mat (Physic::Material *)
 
Baseitem ()
 
const Baseitem () const
 
bool is_same (const Base &) const
 
template<class T >
T & cast_to ()
 
template<class T >
const T & cast_to () const
 
template<class T >
bool is () const
 
virtual bool is (size_t) const
 
virtual const std::string & get_ID () const
 
virtual Baseclone ()
 
template<class T >
T & clone_to ()
 
virtual std::ostream & write_ascii (std::ostream &out) const
 
virtual std::istream & read_ascii (std::istream &in)
 
virtual std::ostream & export_to_povray (std::ostream &out) const
 
Signal< Base & > & deleted_signal ()
 
- Public Member Functions inherited from GranOO3::Core::Null
 Null ()
 
virtual ~Null ()
 
- Public Member Functions inherited from GranOO3::Core::Drawable
 Drawable ()
 
virtual ~Drawable ()
 
virtual void draw ()
 
virtual void draw_edge ()
 
virtual void init_default_color ()
 
virtual std::ostream & get_info (std::ostream &os) const
 
virtual const Colordefault_color () const
 
Colorget_color ()
 
const Colorget_color () const
 
virtual void set_color (const Color &)
 
virtual void set_alpha (float alpha)
 
void apply_color () const
 
void apply_edge_color () const
 
void apply_default_color ()
 
void apply_selected_color ()
 
void set_line_width (float)
 
float get_line_width () const
 
float & get_line_width ()
 
void apply_line_width () const
 
bool is_visible () const
 
void set_visible (bool)
 
void paint ()
 
void paint_edge ()
 
unsigned int get_item_glkey () const
 
- Public Member Functions inherited from GranOO3::Core::Register< Base >
 Register ()
 
virtual ~Register ()
 
void erase_from_all_setof ()
 
bool belong_to_setof (const std::string &setOfId) const
 
bool belong_to_setof (const SetOf< Base > &set) const
 
std::list< SetOf< Base > * > & get_setof_list ()
 
unsigned long long int get_numeric_ID () const
 

Static Public Member Functions

static Baseget_by_numID (size_t)
 
static void clear_all_numID ()
 
static unsigned int get_sub_class_number ()
 
- Static Public Member Functions inherited from GranOO3::Core::Drawable
static Drawableget_drawable_item_by_glkey (int)
 
static void set_draw_precision (unsigned int p)
 
static void increase_draw_precision ()
 
static void decrease_draw_precision ()
 
static unsigned int get_draw_precision ()
 

Protected Member Functions

 Base ()
 

Static Protected Member Functions

static unsigned int affect_class_rank_ID ()
 

Private Member Functions

Baseoperator= (const Base &)=delete
 
template<class Archive >
void serialize (Archive &ar, const unsigned int)
 

Private Attributes

size_t _numID
 
size_t _uID
 
Signal< Base & > _deleted_signal
 
Physic::Material_mat
 

Static Private Attributes

static unsigned int _sub_class_number = 0
 
static size_t uID_counter = 0
 
static std::map< size_t, Base * > _registered_num = std::map<size_t, Base*>()
 

Friends

class boost::serialization::access
 

Additional Inherited Members

- Static Public Attributes inherited from GranOO3::Core::Null
static Null null = Null()
 

Constructor & Destructor Documentation

◆ ~Base()

GranOO3::Core::Base::~Base ( )
virtual

◆ Base()

GranOO3::Core::Base::Base ( )
protected

Member Function Documentation

◆ affect_class_rank_ID()

unsigned int GranOO3::Core::Base::affect_class_rank_ID ( )
staticprotected

◆ cast_to() [1/2]

template<class T >
T & GranOO3::Core::Base::cast_to
inline

◆ cast_to() [2/2]

template<class T >
const T & GranOO3::Core::Base::cast_to
inline

◆ clear_all_numID()

void GranOO3::Core::Base::clear_all_numID ( )
static

◆ clear_numID()

void GranOO3::Core::Base::clear_numID ( )
inline

◆ clone()

Base & GranOO3::Core::Base::clone ( )
virtual

◆ clone_to()

template<class T >
T & GranOO3::Core::Base::clone_to
inline

◆ deleted_signal()

Signal< Base & > & GranOO3::Core::Base::deleted_signal ( )
inline

◆ export_to_povray()

std::ostream & GranOO3::Core::Base::export_to_povray ( std::ostream &  out) const
virtual

◆ get_by_numID()

Base & GranOO3::Core::Base::get_by_numID ( size_t  id)
static

◆ get_ID()

const std::string & GranOO3::Core::Base::get_ID ( ) const
inlinevirtual

◆ get_mat()

Physic::Material & GranOO3::Core::Base::get_mat ( ) const
inline

◆ get_sub_class_number()

unsigned int GranOO3::Core::Base::get_sub_class_number ( )
static

◆ info()

std::string GranOO3::Core::Base::info ( ) const
inlinevirtual

◆ is() [1/2]

template<class T >
bool GranOO3::Core::Base::is
inline

◆ is() [2/2]

bool GranOO3::Core::Base::is ( size_t  classID) const
inlinevirtual

◆ is_same()

bool GranOO3::Core::Base::is_same ( const Base b) const
inline

◆ item() [1/2]

Base & GranOO3::Core::Base::item ( )
inline

◆ item() [2/2]

const Base & GranOO3::Core::Base::item ( ) const
inline

◆ numID()

size_t GranOO3::Core::Base::numID ( ) const
inline

◆ operator=()

Base& GranOO3::Core::Base::operator= ( const Base )
privatedelete

◆ read_ascii()

std::istream & GranOO3::Core::Base::read_ascii ( std::istream &  in)
virtual

◆ serialize()

template<class Archive >
void GranOO3::Core::Base::serialize ( Archive &  ar,
const unsigned int  version 
)
private

◆ set_mat()

void GranOO3::Core::Base::set_mat ( Physic::Material m)
inline

◆ set_numID()

void GranOO3::Core::Base::set_numID ( size_t  val)
inline

◆ uID()

size_t GranOO3::Core::Base::uID ( ) const
inline

◆ write_ascii()

std::ostream & GranOO3::Core::Base::write_ascii ( std::ostream &  out) const
virtual

Friends And Related Function Documentation

◆ boost::serialization::access

friend class boost::serialization::access
friend

Member Data Documentation

◆ _deleted_signal

Signal<Base &> GranOO3::Core::Base::_deleted_signal
private

◆ _mat

Physic::Material* GranOO3::Core::Base::_mat
private

◆ _numID

size_t GranOO3::Core::Base::_numID
private

◆ _registered_num

std::map< size_t, Base * > GranOO3::Core::Base::_registered_num = std::map<size_t, Base*>()
staticprivate

◆ _sub_class_number

unsigned int GranOO3::Core::Base::_sub_class_number = 0
staticprivate

◆ _uID

size_t GranOO3::Core::Base::_uID
private

◆ uID_counter

size_t GranOO3::Core::Base::uID_counter = 0
staticprivate

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