CC-Fractal-Suite
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Friends | List of all members
CC::COP2_Buddhabrot Class Reference

Mandelbrot Operator class. More...

#include <COP2_Buddhabrot.h>

Inheritance diagram for CC::COP2_Buddhabrot:

Public Member Functions

OP_ERROR filterImage (COP2_Context &context, const TIL_Region *input, TIL_Region *output)
 Non-static cookFullImage callback, called by filter. More...
 
virtual void getMaxNumThreadsInCook (COP2_Context &, int &maxp, int &maxn, int &op) const
 Specifies thread usage for this node. More...
 
virtual void getInputDependenciesForOutputArea (COP2_CookAreaInfo &output_area, const COP2_CookAreaList &input_areas, COP2_CookAreaList &needed_areas)
 Used for fetching incoming COP2 image data. More...
 
std::vector< COMPLEXbuddhabrotPoints (Mandelbrot *fractal, const COMPLEX &c, unsigned int nIterations)
 Calculates Set of Fractal Set Coords Based on fractalCoords Position.
 

Static Public Member Functions

static OP_ERROR filter (COP2_Context &context, const TIL_Region *input, TIL_Region *output, COP2_Node *me)
 Static cookFullImage callback method. More...
 

Static Public Attributes

static OP_TemplatePair myTemplatePair
 Assign Template Pair of node to generator. More...
 
static OP_VariablePair myVariablePair
 Assign empty variable pairing. More...
 
static PRM_Template myTemplateList []
 Populated heavily from macros from FractalNode.h. More...
 
static const char * myInputLabels []
 Empty. More...
 

Protected Member Functions

virtual COP2_ContextData * newContextData (const TIL_Plane *, int, fpreal32 t, int xres, int yres, int thread, int max_threads)
 Evaluate Parms and Stash Data for Cooking in a contextData object. More...
 
virtual OP_ERROR doCookMyTile (COP2_Context &context, TIL_TileList *tiles)
 Generates the image. More...
 
virtual void computeImageBounds (COP2_Context &context)
 Sets the image bounds. More...
 
virtual bool updateParmsFlags () override
 Use to hide/unhide parameters. More...
 

Friends

class OP
 Accessor used to construct this object in register.cpp.
 

Detailed Description

Mandelbrot Operator class.

Inherits from COP2_Maskop, meaning it will the entire image at once as a 'full-image filter'. Unlike other nodes in the CCFS, this node is not a pure generator, and requires an input node. See 'COP Concepts' in the HDK documentation.

Member Function Documentation

§ computeImageBounds()

void CC::COP2_Buddhabrot::computeImageBounds ( COP2_Context &  context)
protectedvirtual

Sets the image bounds.

While not virtual, removing this method results in a black frame.

§ doCookMyTile()

OP_ERROR CC::COP2_Buddhabrot::doCookMyTile ( COP2_Context &  context,
TIL_TileList *  tiles 
)
protectedvirtual

Generates the image.

This is a single-threaded call.

§ filter()

OP_ERROR CC::COP2_Buddhabrot::filter ( COP2_Context &  context,
const TIL_Region *  input,
TIL_Region *  output,
COP2_Node *  me 
)
static

Static cookFullImage callback method.

§ filterImage()

OP_ERROR CC::COP2_Buddhabrot::filterImage ( COP2_Context &  context,
const TIL_Region *  input,
TIL_Region *  output 
)

Non-static cookFullImage callback, called by filter.

§ getInputDependenciesForOutputArea()

void CC::COP2_Buddhabrot::getInputDependenciesForOutputArea ( COP2_CookAreaInfo &  output_area,
const COP2_CookAreaList &  input_areas,
COP2_CookAreaList &  needed_areas 
)
virtual

Used for fetching incoming COP2 image data.

§ getMaxNumThreadsInCook()

virtual void CC::COP2_Buddhabrot::getMaxNumThreadsInCook ( COP2_Context &  ,
int &  maxp,
int &  maxn,
int &  op 
) const
inlinevirtual

Specifies thread usage for this node.

§ newContextData()

COP2_ContextData * CC::COP2_Buddhabrot::newContextData ( const TIL_Plane *  planename,
int  index,
fpreal32  t,
int  image_sizex,
int  image_sizey,
int  thread,
int  maxthreads 
)
protectedvirtual

Evaluate Parms and Stash Data for Cooking in a contextData object.

Parameters
indexplanename
tarray index
image_sizextime
image_sizeyxsize
threadysize
maxthreadsthread max_num_threads

§ updateParmsFlags()

bool CC::COP2_Buddhabrot::updateParmsFlags ( )
overrideprotectedvirtual

Use to hide/unhide parameters.

Member Data Documentation

§ myInputLabels

const char * CC::COP2_Buddhabrot::myInputLabels
static
Initial value:
=
{
"Image to Filter",
"Mask Input",
0
}

Empty.

  • static CH_LocalVariable myVariableList[];

/**Name the labels for the inputs.

§ myTemplateList

PRM_Template CC::COP2_Buddhabrot::myTemplateList
static
Initial value:
{
PRM_Template(PRM_SWITCHER, 3, &PRMswitcherName, switcher),
PRM_Template(PRM_SEPARATOR, TOOL_PARM, 1, &nameSepA),
PRM_Template(PRM_SEPARATOR, TOOL_PARM, 1, &nameSepB),
PRM_Template(PRM_FLT_J, TOOL_PARM, 1, &nameSamples,
&defaultSamples, 0, &rangeSamples),
PRM_Template(PRM_INT_J, TOOL_PARM, 1, &nameSeed, PRMzeroDefaults),
PRM_Template(PRM_TOGGLE_J, TOOL_PARM, 1, &nameNormalize, PRMoneDefaults),
PRM_Template(PRM_INT_J, TOOL_PARM, 1,
&nameMaxval, &defaultMaxval, 0, &rangeMaxval),
PRM_Template(PRM_SEPARATOR, TOOL_PARM, 1, &nameSepC),
PRM_Template(PRM_TOGGLE_J, TOOL_PARM, 1,
&nameDisplayReferenceFractal, PRMoneDefaults),
PRM_Template()
}

Populated heavily from macros from FractalNode.h.

§ myTemplatePair

OP_TemplatePair CC::COP2_Buddhabrot::myTemplatePair
static

Assign Template Pair of node to generator.

§ myVariablePair

OP_VariablePair CC::COP2_Buddhabrot::myVariablePair
static

Assign empty variable pairing.


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