home | help
sc::ClassDesc(3)		      MPQC			sc::ClassDesc(3)

NAME
     sc::ClassDesc - This class is used to contain information about classes.

SYNOPSIS
     #include <class.h>

     Inherits sc::Identity.

   Public Member Functions
     ClassDesc	(const	std::type_info	&, const char *, int=1, const char *p=0,
	 DescribedClass *(*ctor)()=0, DescribedClass  *(*keyvalctor)(const  Ref<
	 KeyVal > &)=0, DescribedClass *(*stateinctor)(StateIn &)=0)
     const ParentClasses & parents () const
     const char * name () const
	 Returns the name of the class.
     int version () const
	 Returns the version number of the class.
     DescribedClass * create_described_class () const
	 This member has been replaced by create().
     virtual DescribedClass * create () const
	 Create an instance of DescribedClass with exact type equal to the class
	 to which this class descriptor belongs.
     virtual DescribedClass * create (const Ref< KeyVal > &) const
	 Create an instance of DescribedClass with exact type equal to the class
	 to which this class descriptor belongs.
     virtual DescribedClass * create (StateIn &) const
	 Create an instance of DescribedClass with exact type equal to the class
	 to which this class descriptor belongs.

     Public Member Functions inherited from sc::Identity
     Identifier identifier ()
	 Return the Identifier for this argument.

   Static Public Member Functions
     static std::map< std::string, ClassDescP > & all ()
     static void list_all_classes ()
	 Writes a list of all of the classes to ExEnv::out0().
     static ClassDesc * name_to_class_desc (const char *)
	 Given the name of the class, return a pointer to the class descriptor.
     static ClassDesc * class_desc (const std::type_info &)
	 Given a type_info object return a pointer to the ClassDesc.
     static int load_class (const char *classname)
	 Attempt to dynamically load the shared object file for classname.

   Friends
     class ParentClasses

Detailed Description
     This class is used to contain information about classes.

     Each  DescribedClass  type  has  a static ClassDesc member. This member has
     lists of the parents, children and virtual  parents  for  each  class.  The
     ClassDesc	class  also  has a static member that is a list of all described
     classes in the system. These lists are constructed as the constructors  for
     the  static  ClassDesc  members for each class are called and are completed
     before main is entered. See class for more information.

Member Function Documentation
   virtual DescribedClass * sc::ClassDesc::create () const [virtual]
     Create an instance of DescribedClass with exact type equal to the class  to
     which  this  class descriptor belongs. The constructor which takes no argu-
     ments is used. If this constructor doesn't exist or a static function  that
     calls  it with new wasn't given to this ClassDesc when it was created, then
     0 will be returned.

   virtual DescribedClass * sc::ClassDesc::create (const Ref< KeyVal > &)  const
     [virtual]
     Create  an instance of DescribedClass with exact type equal to the class to
     which this class descriptor belongs. The KeyVal& constructor  is  used.  If
     this  constructor doesn't exist or a static function that calls it with new
     wasn't passed to this ClassDesc, then 0 will be returned.

   virtual DescribedClass * sc::ClassDesc::create (StateIn &) const [virtual]
     Create an instance of DescribedClass with exact type equal to the class  to
     which  this  class descriptor belongs. The StateIn& constructor is used. If
     this constructor doesn't exist or a static function that calls it with  new
     wasn't passed to this ClassDesc, then 0 will be returned.

Author
     Generated automatically by Doxygen for MPQC from the source code.

Version 2.3.1			 Thu Sep 3 2026 		sc::ClassDesc(3)

home | help