Simulacrum  1.2
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
Simulacrum::SSlicer Class Reference

#include <slicer.h>

Inheritance diagram for Simulacrum::SSlicer:
Inheritance graph
Collaboration diagram for Simulacrum::SSlicer:
Collaboration graph

Public Types

typedef std::function< void(SSlicer *, const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint &, const SVector &, unsigned, SElem &, SElem &)> linereduction_t
 
- Public Types inherited from Simulacrum::SConnectable
typedef unsigned ssignal_t
 
typedef bool sdepth_t
 

Public Member Functions

 SSlicer ()
 
 SSlicer (SSpace &)
 
 SSlicer (const SSlicer &)
 
virtual ~SSlicer ()
 
virtual SSpaceNew () override
 
bool resize (const SCoordinate &) override
 
SElem::DataSource SElemData (const SCoordinate &) override
 
SElem::DataSource SElemData_Passive (const SCoordinate &) override
 
void SElemInto (const SCoordinate &, SElem &target) override
 
SElem::Ptr getNativeSElem () override
 
SElemgetNativeSElemP () override
 
void setNativeSElemType (SElem *) override
 
virtual SElemSetselemDataStore () override
 
virtual std::vector< DataContext * > & selemDataContexts () override
 
const SCoordinateextent () const override
 
void reset () override
 
virtual bool sconnect (SConnectable &) override
 
virtual bool sdisconnect (SConnectable &) override
 
virtual void sconfigure (const std::string &) override
 
virtual SCoordinate toSourceCoords (const SCoordinate &) const override
 
virtual bool fromSourceCoords (const SCoordinate &sourcecoord, SCoordinate &localcoord) const override
 
bool isOnSlice (const SVector &sourcepos) const
 
void setPlane (const SPoint &orig, const SVector &xvec, const SVector &yvec)
 
SPlane getPlane () const
 
SVector getXAxis () const
 
SVector getYAxis () const
 
void setThickness (unsigned)
 
void setReductionFunction (linereduction_t)
 
unsigned thickness () const
 
float thicknessSpacing () const
 
void sliceForwards ()
 
void sliceBackwards ()
 
void setFrontSlice ()
 
unsigned slice () const
 
unsigned depth () const
 
bool setSlice (unsigned)
 
SCoordinate coordinateSuffix () const
 
void setCoordinateSuffix (const SCoordinate &)
 
virtual void refresh (SConnectable::sdepth_t) override
 
SSpacegetSourceSSpace () override
 
void copyInto (SSpace &, bool withimagedata=true) override
 
void get2DRGBAInto (SSpace &target, unsigned short downsample=0, bool mergecontexts=true, float opacity=0.3, SCoordinate *cropb=nullptr, SCoordinate *crope=nullptr, SCoordinate::Precision zoffet=-1) override
 
void lock () override
 
bool try_lock () override
 
void unlock () override
 
void wait () override
 
bool sliceable ()
 
void MaxIPGrey (const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint &, const SVector &, unsigned, SElem &, SElem &)
 
void MinIPGrey (const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint &, const SVector &, unsigned, SElem &, SElem &)
 
void AVGIPGrey (const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint &, const SVector &, unsigned, SElem &, SElem &)
 
void FirstOverGrey (const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint &, const SVector &, unsigned, SElem &, SElem &, SElem::Precision, bool, SPoint &)
 
SPtr< SSpaceIteratorgetFastNativeIterator () override
 
SSpaceIteratorgetFastNativeIteratorP () override
 
virtual const SVectorspacing () const override
 
virtual void setSpacing (const SVector &) override
 
virtual std::string spacingUnits (long long int index=0) const override
 
virtual void setSpacingUnits (const std::string &, long long int index=0) override
 
virtual NNodeinformationNode () override
 
virtual void setName (const std::string &) override
 
virtual const std::string & getName () const override
 
virtual GPLUTLUT () override
 
virtual void setActiveContext (CONTEXTS_t) override
 
virtual CONTEXTS_t activeContext () const override
 
virtual CONTEXTS_t contexts () const override
 
virtual CONTEXTS_t newContext () override
 
virtual void removeContext (CONTEXTS_t) override
 
virtual SVector toGlobalSpace (const SVector &) override
 
virtual SVector fromGlobalSpace (const SVector &) override
 
virtual void setToGlobalSpaceFunction (std::function< SVector(SSpace *, const SVector &)>) override
 
virtual void setFromGlobalSpaceFunction (std::function< SVector(SSpace *, const SVector &)>) override
 
virtual std::string globalSpaceID () const override
 
virtual void setGlobalSpaceID (const std::string &) override
 
virtual std::string vectorMeaning (const SVector &, bool strict=true) const override
 
virtual SVector meaningVector (const std::string &) const override
 
virtual void assignVectorMeaning (const SVector &, const std::string &) override
 
virtual void resetMeaningVectors () override
 
- Public Member Functions inherited from Simulacrum::SSpace
 SSpace ()
 
 SSpace (const SCoordinate &)
 
 SSpace (SSpace &)
 
 SSpace (const SSpace &)
 
virtual ~SSpace ()
 
virtual SElemSet::Size calcIndex (const SCoordinate &) const
 
virtual int concatenate (std::vector< SSpace * > &)
 
virtual SSpaceoperator= (SSpace &)
 
virtual SSpaceoperator= (const SSpace &)
 
virtual SElem::DataSource operator[] (const SCoordinate &)
 
virtual void lockNativeSElemType (bool)
 
virtual bool nativeSElemTypeLocked ()
 
const SCoordinateextentP () const
 
bool reinterpretExtent (const SCoordinate &)
 
virtual void promoteExtent ()
 
GPLUTLUTP ()
 
SElemSetselemDataStoreP ()
 
std::vector< DataContext * > * selemDataContextsP ()
 
virtual void applyLUT ()
 
void autoLUT (int percentile=90, long long int width=-1, long long int center=-1, const std::vector< std::pair< float, float > > *histogram=nullptr)
 
virtual bool postLoadConfig ()
 
NNodeinformationNodeP ()
 
const SVectorspacingP () const
 
- Public Member Functions inherited from Simulacrum::SConnectable
 SConnectable ()
 
virtual ~SConnectable ()
 
void emitRefresh (sdepth_t)
 
virtual void signal (ssignal_t, void *=nullptr)
 
void emitSignal (ssignal_t, void *=nullptr)
 
virtual void progress (int)
 
virtual bool sconnect (SConnectable &, bool delondiscon)
 
virtual void disconnectSources ()
 
virtual void disconnectListeners ()
 
virtual void disconnectListeners_Refresh ()
 
virtual bool isConnected (SConnectable &) const
 
virtual bool isConnected (SConnectable *) const
 
virtual SConnectableend ()
 
virtual SConnectablepenum ()
 
virtual SConnectablepred ()
 
virtual SConnectablesucc ()
 
virtual void deleteOnDisconnect (bool)
 
virtual bool deleteOnDisconnect ()
 
const std::map< std::string, double > & parameters ()
 
const std::map< std::string, std::string > & properties ()
 
bool hasProperty (const std::string &) const
 
bool hasParameter (const std::string &) const
 
void setProperty (const std::string &, const std::string &)
 
void setParameter (const std::string &, double)
 
std::string getProperty (const std::string &) const
 
double getParameter (const std::string &) const
 
- Public Member Functions inherited from Simulacrum::SLockable
virtual void refIncr ()
 
virtual void refDecr ()
 
virtual int refCount ()
 
 SLockable ()
 
 SLockable (const SLockable &)
 
virtual ~SLockable ()
 

Static Public Member Functions

static SElem::Precision triLinearInterpolateIntensity (SSpace &source, const SVector &coords)
 

Protected Member Functions

void getRGBAScanlinesInto (SSpace *target, SCoordinate::Precision startrow, SCoordinate::Precision endrow, SCoordinate::Precision width, unsigned short step, bool mergecontexts, float opacity, SCoordinate::Precision startcol=0, SCoordinate::Precision endcol=0, SCoordinate::Precision=0) override
 
- Protected Member Functions inherited from Simulacrum::SConnectable
virtual bool addListener (SConnectable &)
 
virtual bool removeListener (SConnectable &)
 
virtual bool addTarget (SConnectable &)
 
virtual bool removeTarget (SConnectable &)
 

Friends

class SSliceIteratorNativeFast
 

Member Typedef Documentation

◆ linereduction_t

typedef std::function<void(SSlicer*, const SCoordinate::Precision xx, const SCoordinate::Precision yy, const SPoint&,const SVector&, unsigned, SElem&,SElem&)> Simulacrum::SSlicer::linereduction_t

Constructor & Destructor Documentation

◆ SSlicer() [1/3]

SSlicer::SSlicer ( )

◆ SSlicer() [2/3]

SSlicer::SSlicer ( SSpace source)

◆ SSlicer() [3/3]

SSlicer::SSlicer ( const SSlicer target)

◆ ~SSlicer()

SSlicer::~SSlicer ( )
virtual

Member Function Documentation

◆ activeContext()

CONTEXTS_t SSlicer::activeContext ( ) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ assignVectorMeaning()

void SSlicer::assignVectorMeaning ( const SVector ,
const std::string &   
)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ AVGIPGrey()

void SSlicer::AVGIPGrey ( const SCoordinate::Precision  xx,
const SCoordinate::Precision  yy,
const SPoint sourcep,
const SVector dir,
unsigned  depth,
SElem sourcepox,
SElem targetpox 
)

◆ contexts()

CONTEXTS_t SSlicer::contexts ( ) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ coordinateSuffix()

SCoordinate SSlicer::coordinateSuffix ( ) const

◆ copyInto()

void SSlicer::copyInto ( SSpace target,
bool  withimagedata = true 
)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ depth()

unsigned SSlicer::depth ( ) const

◆ extent()

const SCoordinate & SSlicer::extent ( ) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ FirstOverGrey()

void SSlicer::FirstOverGrey ( const SCoordinate::Precision  xx,
const SCoordinate::Precision  yy,
const SPoint sourcep,
const SVector dir,
unsigned  depth,
SElem sourcepox,
SElem targetpox,
SElem::Precision  zerolevel,
bool  doshade,
SPoint lightsrc 
)

◆ fromGlobalSpace()

SVector SSlicer::fromGlobalSpace ( const SVector srccoord)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ fromSourceCoords()

bool SSlicer::fromSourceCoords ( const SCoordinate sourcecoord,
SCoordinate localcoord 
) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ get2DRGBAInto()

void SSlicer::get2DRGBAInto ( SSpace target,
unsigned short  downsample = 0,
bool  mergecontexts = true,
float  opacity = 0.3,
SCoordinate cropb = nullptr,
SCoordinate crope = nullptr,
SCoordinate::Precision  zoffet = -1 
)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getFastNativeIterator()

SPtr< SSpaceIterator > SSlicer::getFastNativeIterator ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getFastNativeIteratorP()

SSpaceIterator * SSlicer::getFastNativeIteratorP ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getName()

const std::string & SSlicer::getName ( ) const
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ getNativeSElem()

SElem::Ptr SSlicer::getNativeSElem ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getNativeSElemP()

SElem * SSlicer::getNativeSElemP ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getPlane()

SPlane SSlicer::getPlane ( ) const

◆ getRGBAScanlinesInto()

void SSlicer::getRGBAScanlinesInto ( SSpace target,
SCoordinate::Precision  startrow,
SCoordinate::Precision  endrow,
SCoordinate::Precision  width,
unsigned short  step,
bool  mergecontexts,
float  opacity,
SCoordinate::Precision  startcol = 0,
SCoordinate::Precision  endcol = 0,
SCoordinate::Precision  = 0 
)
overrideprotectedvirtual

Reimplemented from Simulacrum::SSpace.

◆ getSourceSSpace()

SSpace & SSlicer::getSourceSSpace ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ getXAxis()

SVector SSlicer::getXAxis ( ) const

◆ getYAxis()

SVector SSlicer::getYAxis ( ) const

◆ globalSpaceID()

std::string SSlicer::globalSpaceID ( ) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ informationNode()

NNode & SSlicer::informationNode ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ isOnSlice()

bool SSlicer::isOnSlice ( const SVector sourcepos) const

◆ lock()

void SSlicer::lock ( )
overridevirtual

Reimplemented from Simulacrum::SLockable.

◆ LUT()

GPLUT & SSlicer::LUT ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ MaxIPGrey()

void SSlicer::MaxIPGrey ( const SCoordinate::Precision  xx,
const SCoordinate::Precision  yy,
const SPoint sourcep,
const SVector dir,
unsigned  depth,
SElem sourcepox,
SElem targetpox 
)

◆ meaningVector()

SVector SSlicer::meaningVector ( const std::string &  meaning) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ MinIPGrey()

void SSlicer::MinIPGrey ( const SCoordinate::Precision  xx,
const SCoordinate::Precision  yy,
const SPoint sourcep,
const SVector dir,
unsigned  depth,
SElem sourcepox,
SElem targetpox 
)

◆ New()

SSpace * SSlicer::New ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ newContext()

CONTEXTS_t SSlicer::newContext ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ refresh()

void SSlicer::refresh ( SConnectable::sdepth_t  deep)
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ removeContext()

void SSlicer::removeContext ( CONTEXTS_t  removecon)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ reset()

void SSlicer::reset ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ resetMeaningVectors()

void SSlicer::resetMeaningVectors ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ resize()

bool SSlicer::resize ( const SCoordinate targsize)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ sconfigure()

void SSlicer::sconfigure ( const std::string &  configtr)
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ sconnect()

bool SSlicer::sconnect ( SConnectable targ)
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ sdisconnect()

bool SSlicer::sdisconnect ( SConnectable targ)
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ SElemData()

SElem::DataSource SSlicer::SElemData ( const SCoordinate reqcoord)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ SElemData_Passive()

SElem::DataSource SSlicer::SElemData_Passive ( const SCoordinate reqcoord)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ selemDataContexts()

std::vector< DataContext * > & SSlicer::selemDataContexts ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ selemDataStore()

SElemSet & SSlicer::selemDataStore ( )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ SElemInto()

void SSlicer::SElemInto ( const SCoordinate reqcoord,
SElem target 
)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setActiveContext()

void SSlicer::setActiveContext ( CONTEXTS_t  ncon)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setCoordinateSuffix()

void SSlicer::setCoordinateSuffix ( const SCoordinate newsuff)

◆ setFromGlobalSpaceFunction()

void SSlicer::setFromGlobalSpaceFunction ( std::function< SVector(SSpace *, const SVector &)>  )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setFrontSlice()

void SSlicer::setFrontSlice ( )

◆ setGlobalSpaceID()

void SSlicer::setGlobalSpaceID ( const std::string &  )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setName()

void SSlicer::setName ( const std::string &  nname)
overridevirtual

Reimplemented from Simulacrum::SConnectable.

◆ setNativeSElemType()

void SSlicer::setNativeSElemType ( SElem newpox)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setPlane()

void SSlicer::setPlane ( const SPoint orig,
const SVector xvec,
const SVector yvec 
)

◆ setReductionFunction()

void SSlicer::setReductionFunction ( linereduction_t  newredfunc)

◆ setSlice()

bool SSlicer::setSlice ( unsigned  nslice)

◆ setSpacing()

void SSlicer::setSpacing ( const SVector )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setSpacingUnits()

void SSlicer::setSpacingUnits ( const std::string &  ,
long long int  index = 0 
)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ setThickness()

void SSlicer::setThickness ( unsigned  nthickness)

◆ setToGlobalSpaceFunction()

void SSlicer::setToGlobalSpaceFunction ( std::function< SVector(SSpace *, const SVector &)>  )
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ slice()

unsigned SSlicer::slice ( ) const

◆ sliceable()

bool SSlicer::sliceable ( )

◆ sliceBackwards()

void SSlicer::sliceBackwards ( )

◆ sliceForwards()

void SSlicer::sliceForwards ( )

◆ spacing()

const SVector & SSlicer::spacing ( ) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ spacingUnits()

std::string SSlicer::spacingUnits ( long long int  index = 0) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ thickness()

unsigned SSlicer::thickness ( ) const

◆ thicknessSpacing()

float SSlicer::thicknessSpacing ( ) const

◆ toGlobalSpace()

SVector SSlicer::toGlobalSpace ( const SVector srccoord)
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ toSourceCoords()

SCoordinate SSlicer::toSourceCoords ( const SCoordinate reqcoord) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ triLinearInterpolateIntensity()

SElem::Precision SSlicer::triLinearInterpolateIntensity ( SSpace source,
const SVector coords 
)
static

◆ try_lock()

bool SSlicer::try_lock ( )
overridevirtual

Reimplemented from Simulacrum::SLockable.

◆ unlock()

void SSlicer::unlock ( )
overridevirtual

Reimplemented from Simulacrum::SLockable.

◆ vectorMeaning()

std::string SSlicer::vectorMeaning ( const SVector avect,
bool  strict = true 
) const
overridevirtual

Reimplemented from Simulacrum::SSpace.

◆ wait()

void SSlicer::wait ( )
overridevirtual

Reimplemented from Simulacrum::SLockable.

Friends And Related Function Documentation

◆ SSliceIteratorNativeFast

friend class SSliceIteratorNativeFast
friend

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