BaseObject Inherited Classes: All of them.


Detailed Description

Here are links to classes inherited from BaseObject. It means that all these classes can be registered to a BaseContext with BaseContext::RegisterClassList(), and then object instancied from it with BaseContext::NewObject(), if not virtual. they can then be edited, referenced, in this context. These classes may be virtual or not. In this list, each class can come from one library package or another.


Classes

class  BaseObject
 Virtual Base class for all objects managed in a BaseContext.
  • To be used in such context, Each classes (virtual or not) inheriting BaseObject should be first registered to this context using BaseContext::RegisterClassList(), by passing the static descriptor m_description to it. You must not construct these objects with operator new and delete, but with public methods BaseContext::NewObject() and BaseContext::DestroyObject(). All Object Instances (and their serializable members) will then be serialized with the context.
  • There is 2 levels of construction for objects managed by a context:
    You register your serializable member in the C++ constructor, but you write your construction code by ovverriding the protected virtual method CreateInternal(), and your destruction code must stand in an override of the protected virtual method CloseInternal(). It means, all allocation done in CreateInternal() must be close in CloseInternal().
  • To throw the creation of your object from outside the context, you must use the public Create(), and check its return code. To close it, use Close(). Destroying a BaseContext with the delete operator will delete all its BaseObjects. You can check the creation state of an object at any time with IsCreated(). The methods of your objects should only be used when the object is created with no error.
  • Your object may have registered PackObjectReference members: they are dynamic pointers to other objects in the context. Your object will be dependant of the objects it points at. In fact, Create() assumes that if your object is successfully created, all its dependant objects are also created successfully. It means that, inside your CreateInternal() code, the pointer you get from your PackObjectReference members points objects that are already created succesfully. Look Create() for more.
  • About GetName(): All BaseObject are named for convenience when edited, but this name isn't usually used to refer the objects.
  • Extending a registerable BaseObject must be done by using a define macro in its header (.h) and a declaration macro in its (.cpp). These macros will automatise the code of the destructor, but the constructor must be coded. you must call the super constructor from it, and then register your serializable members in it. from class SimpleTest, you could have this SimpleTest.h:.
More...
class  InterfacePrefObject
 This class provide a unified way to stock preferences and states informations about a GUI that would edit a AzurVeda Context, so it is saved within a context. Basically, an editor should use Get()/Set() and serialization, to keep the current objects edited and previewed. It is not registered to BaseContext by default. you got to register it or not, according to your needs. Thus, it has to be registered first if you use inherited classes. ( through BaseContext::RegisterClassList() of course ). As editor preferences may be only useful during edition, it is of course possible to flush these objects from the context, like any other objects. This class has no sense in non editable mode and should just not be used in such compilation mode. More...
class  MediaAccess
 Define which Media objects are the main media and the boot media in a context. Then static method MediaAccess::GetMainMedia() is a simple entry to a media in the context. There should be only one MediaAccess object per context. More...
class  MediaTimePattern
 The class Defining a media pattern as a list of tracks of other media to mix. Each track is a suit of VirtualMedia reference to play. a MediaTimePattern can call other ones recursively. More...
class  TextLocalized
 Define a text and possibly other localized versions. More...
class  VirtualMedia
 Base model for all class that plays a suit of animations and/or sounds. You should extend ProcessMedia() for animations, and ProcessSoundInterupt() for sounds, in any way. This example extends a VirtualMedia and plays it. Note this class is not registered to BaseContext by default. you got to register it or not, according to your needs. Thus, it got to be registered first if you use inherited classes. ( through BaseContext::RegisterClassList() ) Also note that VirtualMedia::ProcessSoundInterupt() manages the sound registration to the machine itself. More...
class  EquationGamma
 Color calibration equation, first made to calibrate colors images with Image RGBA Mixer. You can use this equation to calibrate brightness and contrast for example. It does an equation of the shape: Result.X=func(Input.X). More...
class  EquationList
 Able to compute an equation according to a list of operators. More...
class  EquationSinus3D
 DEPRECATED. More...
class  EquationSoundSignal
 Return the Machine's Sound signal output as an equation: Returns the machine's current stereo sound curve. You can define which terms of the result are affected. The length curve definition may vary, but is scaled along [0,1] by Input.X (see Equation List). More...
class  EquationSpline_X
 Spline function for X. More...
class  EquationSpline_XY
 Spline function for XY. More...
class  EquationSpline_XYZ
 Spline function for XYZ. More...
class  VirtualEquation
 virtual class Defining an equation of the form: result = func(x,y,z,time) More...
class  VirtualEquationSpline
 Spline function virtual model, with no defined dimension depth. More...
class  BubbleGreyImage
 Class able to build some grey, 2n-pixelSized, bubble Image... More...
class  GreyImage
 1 byte component-per-pixel Images. Can then be used or mixed by RGBAImage for a color image. Still, it is virtual because size can then be given on classes that manage the type of size of the Bitmap. More...
class  GreyImage2nSquareSized
 Virtual Class for Grey Image that exactly size a 2-Power-N square sized image. Some image generation Algorythms implies to use such images. More...
class  ImplicitEquationImage
 virtual base Class able to define an image defined by an equation: More...
class  ImplicitEquationImage
 virtual base Class able to define an image defined by an equation: More...
class  PerlinNoiseImage
 Class able to build a grey, 2n-pixelSized, perlin noise Image. More...
class  ProceduralImage
 Virtual Base class for procedural Images. It manages a random number, and serialize its editable random seed number, which defines the whole shape. More...
class  RGBAImage
 Image that mix images of any size or color depth into a new RGBA one. it uses a layer list by source image. Each layers can affect a color channel, it can use a HSV->RGB mixer and manages alpha channel. More...
class  VirtualImage
 virtual Class defining a generic Image usable by effects. To this level, VirtualImage manages a generic memory allocation for the bitmap. More...


      /\/\        4         N         k         !         N         D
                      _______  _ __ ___  _____            ___ _ _  ____
     ___________  __//___   /________  |/    / ___________\_______/    \
    /   _   _   \/   _     /    _   /      _/_/____/    _       __     /
   /    /   /       /     /    /    \      \/     /    /    \   \     /
  \\___/___/___/    ¯    _____/_____/       ______\___/_____/\________\\
               \________/_ ___ __ l____\      /elD!  
                 http://www.m4nkind.com \____/