Cuberite
A lightweight, fast and extensible game server for Minecraft
Public Types | Public Member Functions | Protected Attributes | Private Types | List of all members
cIntGenSetRandomly< SizeX, SizeZ > Class Template Reference

Changes random pixels of the underlying data to the specified value. More...

#include <IntGen.h>

Inheritance diagram for cIntGenSetRandomly< SizeX, SizeZ >:
Inheritance graph
[legend]
Collaboration diagram for cIntGenSetRandomly< SizeX, SizeZ >:
Collaboration graph
[legend]

Public Types

using Underlying = std::shared_ptr< cIntGen< SizeX, SizeZ > >
 
- Public Types inherited from cIntGen< SizeX, SizeZ >
using IntGenType = cIntGen< SizeX, SizeZ >
 
using Values = int[SizeX *SizeZ]
 Holds the array of values generated by this class (descendant). More...
 

Public Member Functions

 cIntGenSetRandomly (int a_Seed, int a_Chance, int a_ToValue, Underlying a_Underlying)
 
virtual void GetInts (int a_MinX, int a_MinZ, typename Super::Values &a_Values) override
 Generates the array of templated size into a_Values, based on given min coords. More...
 
- Public Member Functions inherited from cIntGenWithNoise< SizeX, SizeX >
 cIntGenWithNoise (int a_Seed)
 
- Public Member Functions inherited from cIntGen< SizeX, SizeZ >
virtual ~cIntGen ()
 Force a virtual destructor in all descendants. More...
 

Protected Attributes

int m_Chance
 Chance, in permille, of changing each pixel. More...
 
int m_ToValue
 The value to which to set the pixel. More...
 
Underlying m_Underlying
 
- Protected Attributes inherited from cIntGenWithNoise< SizeX, SizeX >
cNoise m_Noise
 

Private Types

using Super = cIntGenWithNoise< SizeX, SizeZ >
 

Additional Inherited Members

- Protected Member Functions inherited from cIntGenWithNoise< SizeX, SizeX >
int ChooseRandomOne (int a_RndX, int a_RndZ, int a_Val1, int a_Val2)
 Chooses one of a_Val1 or a_Val2, based on m_Noise and the coordinates for querying the noise. More...
 
int ChooseRandomOne (int a_RndX, int a_RndZ, int a_Val1, int a_Val2, int a_Val3, int a_Val4)
 Chooses one of a_ValN, based on m_Noise and the coordinates for querying the noise. More...
 

Detailed Description

template<int SizeX, int SizeZ = SizeX>
class cIntGenSetRandomly< SizeX, SizeZ >

Changes random pixels of the underlying data to the specified value.

Definition at line 1086 of file IntGen.h.

Member Typedef Documentation

◆ Super

template<int SizeX, int SizeZ = SizeX>
using cIntGenSetRandomly< SizeX, SizeZ >::Super = cIntGenWithNoise<SizeX, SizeZ>
private

Definition at line 1089 of file IntGen.h.

◆ Underlying

template<int SizeX, int SizeZ = SizeX>
using cIntGenSetRandomly< SizeX, SizeZ >::Underlying = std::shared_ptr<cIntGen<SizeX, SizeZ> >

Definition at line 1093 of file IntGen.h.

Constructor & Destructor Documentation

◆ cIntGenSetRandomly()

template<int SizeX, int SizeZ = SizeX>
cIntGenSetRandomly< SizeX, SizeZ >::cIntGenSetRandomly ( int  a_Seed,
int  a_Chance,
int  a_ToValue,
Underlying  a_Underlying 
)
inline

Definition at line 1096 of file IntGen.h.

Member Function Documentation

◆ GetInts()

template<int SizeX, int SizeZ = SizeX>
virtual void cIntGenSetRandomly< SizeX, SizeZ >::GetInts ( int  a_MinX,
int  a_MinZ,
typename Super::Values a_Values 
)
inlineoverridevirtual

Generates the array of templated size into a_Values, based on given min coords.

Implements cIntGen< SizeX, SizeZ >.

Definition at line 1105 of file IntGen.h.

Member Data Documentation

◆ m_Chance

template<int SizeX, int SizeZ = SizeX>
int cIntGenSetRandomly< SizeX, SizeZ >::m_Chance
protected

Chance, in permille, of changing each pixel.

Definition at line 1126 of file IntGen.h.

◆ m_ToValue

template<int SizeX, int SizeZ = SizeX>
int cIntGenSetRandomly< SizeX, SizeZ >::m_ToValue
protected

The value to which to set the pixel.

Definition at line 1129 of file IntGen.h.

◆ m_Underlying

template<int SizeX, int SizeZ = SizeX>
Underlying cIntGenSetRandomly< SizeX, SizeZ >::m_Underlying
protected

Definition at line 1131 of file IntGen.h.


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