Open PaperOpt
StructureObject Class Reference

#include <StructureObject.h>

Inheritance diagram for StructureObject:
Collaboration diagram for StructureObject:

List of all members.

Public Member Functions

 StructureObject ()
 StructureObject (StructureObject *)
virtual ~StructureObject ()
int PropInLayer (WavePacket &wp, double &t_vector_init, bool &rBoundary)
virtual int Process (WavePacket &wp, int up_down, int internal) const =0
void mSetTypeObj (int typobj)
int mGetType_obj () const
virtual complex_LC mGetRefrIndex (int nbr) const
const StructureObjectmGetPrevious () const
const StructureObjectmGetNext () const
void DeleteList (void)

Public Attributes

const StructureObjectm_previous
const StructureObjectm_next

Protected Attributes

vector< complex_LCmpRefrIndex
float mXMin
float mXMax
float mYMin
float mYMax
long mIterationLimit
int mTypeObj

Friends

class Basesheet

Detailed Description

General class from which layers and surfaces are derived. The wave packet is passed from StructureObject (PO) to PO until it has left the last PO or has been absorbed. The class contains some general methods used by all child classes (e.g. PropInLayer (Periodic boundary conditions).


Constructor & Destructor Documentation

StructureObject::StructureObject ( )
StructureObject::StructureObject ( StructureObject el)

TODO: DESCRICPTION HERE

Parameters:
StructureObject
StructureObject::~StructureObject ( ) [virtual]

Here is the call graph for this function:


Member Function Documentation

void StructureObject::DeleteList ( void  )

Delete all the next StructureObject

Here is the caller graph for this function:

const StructureObject* StructureObject::mGetNext ( ) const [inline]

Here is the caller graph for this function:

const StructureObject* StructureObject::mGetPrevious ( ) const [inline]

Fetch the previous (above) PaperOject in the simulated structure. Used to access parameters of the next layers (such as refractive index)

Here is the caller graph for this function:

virtual complex_LC StructureObject::mGetRefrIndex ( int  nbr) const [inline, virtual]

Fetch the effective refractive index of a layer

Parameters:
nbrwavelength # of the simulated wave packet
See also:
Basesheet2::mGetRefrIndex

Reimplemented in Basesheet2, Basesheet, and HomogeneousLayer.

Here is the caller graph for this function:

int StructureObject::mGetType_obj ( ) const [inline]

Return the type of StructureObject Used for differenting BASESHEET_S

See also:
SimVolume

Here is the caller graph for this function:

void StructureObject::mSetTypeObj ( int  typobj) [inline]

Set the type of StructureObject

Parameters:
typobjinteger representing the type of StructureObject SURFACE=1, BASESHEET=2, BASESHEET_S =3, BASESHEETSTATIC=4

Here is the caller graph for this function:

virtual int StructureObject::Process ( WavePacket wp,
int  up_down,
int  internal 
) const [pure virtual]

Process the wp within the object overwritten by child objects

See also:
HomogeneousLayer::Process, Basesheet::Process

Implemented in thinFilm, TableLookUpLayer, Basesheet2, PerfectDiffuser, SurfaceTN, SurfaceTopography, Basesheet, Surface, HomogeneousLayer, SurfaceTNInk, p3d::Staticsheet, and p3d::StaticVolume.

Here is the caller graph for this function:

int StructureObject::PropInLayer ( WavePacket wp,
double &  t_vector_init,
bool &  rBoundary 
)

Check for intercepts with the side boundaries of the layer and check whether wave packet is within lateral limits of homogenouse layer

Parameters:
wpWave Packet's object to calculate ditance of interception and call many fuctions of wave packet.
t_vector_initReturns the travelled distance by wave packet
rBoundaryReprsents the status of boundry whether hit or not

Here is the call graph for this function:


Friends And Related Function Documentation

friend class Basesheet [friend]

Member Data Documentation

Pointer to the previous (above) or next (below) PaperOject in the simulated structure. Used to access parameters of the next layers (such as refractive index)

Maximum scattering event within a StructureObject

See also:
Component::mIterationLimit

Effective refractive index of a layer Fix wavelength dependent number Not applicable to Surface

int StructureObject::mTypeObj [protected]

Type of StructureObject

Parameters:
typobjinteger representing the type of StructureObject SURFACE=1, BASESHEET=2, BASESHEET_S =3, BASESHEETSTATIC=4
float StructureObject::mXMax [protected]
float StructureObject::mXMin [protected]

Dimension of the object (micrometer)

float StructureObject::mYMax [protected]
float StructureObject::mYMin [protected]

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