Scroom  0.14
anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation Class Reference
Inheritance diagram for anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation:
Inheritance graph
Collaboration diagram for anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation:
Collaboration graph

Public Types

using Ptr = boost::shared_ptr< OpenTiledBitmapAsPresentation >
 
- Public Types inherited from OpenPresentationInterface
using Ptr = boost::shared_ptr< OpenPresentationInterface >
 

Public Member Functions

std::list< GtkFileFilter * > getFilters () override
 
PresentationInterface::Ptr open (const std::string &fileName) override
 

Static Public Member Functions

static Ptr create (OpenTiledBitmapInterface::Ptr openTiledBitmapInterface_)
 

Private Member Functions

 OpenTiledBitmapAsPresentation (OpenTiledBitmapInterface::Ptr openTiledBitmapInterface_)
 

Private Attributes

OpenTiledBitmapInterface::Ptr openTiledBitmapInterface
 

Member Typedef Documentation

◆ Ptr

using anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::Ptr = boost::shared_ptr<OpenTiledBitmapAsPresentation>

Constructor & Destructor Documentation

◆ OpenTiledBitmapAsPresentation()

anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::OpenTiledBitmapAsPresentation ( OpenTiledBitmapInterface::Ptr  openTiledBitmapInterface_)
inlineexplicitprivate
372  : openTiledBitmapInterface(std::move(openTiledBitmapInterface_))
373  {
374  }

Member Function Documentation

◆ create()

static Ptr anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::create ( OpenTiledBitmapInterface::Ptr  openTiledBitmapInterface_)
inlinestatic
361  {
362  return Ptr(new OpenTiledBitmapAsPresentation(std::move(openTiledBitmapInterface_)));
363  }

◆ getFilters()

std::list<GtkFileFilter*> anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::getFilters ( )
inlineoverridevirtual

Implements OpenPresentationInterface.

366 { return openTiledBitmapInterface->getFilters(); }

◆ open()

PresentationInterface::Ptr anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::open ( const std::string &  fileName)
overridevirtual

Implements OpenPresentationInterface.

378  {
379  auto t = openTiledBitmapInterface->open(fileName);
380  BitmapMetaData bmd = std::move(std::get<0>(t));
381  Layer::Ptr const bottomLayer = std::move(std::get<1>(t));
382  ReloadFunction const load = std::move(std::get<2>(t));
383 
384  auto lsr = LayerSpecForBitmap(bmd);
385  LayerSpec layerSpec = std::move(std::get<0>(lsr));
386  ColormapHelperBase::Ptr const colormapHelper = std::move(std::get<1>(lsr));
387 
389  if(bottomLayer && !layerSpec.empty())
390  {
391  auto tiledBitmap = TiledBitmap::create(bottomLayer, layerSpec);
392  PipetteLayerOperations::Ptr const pipetteLayerOperation = boost::dynamic_pointer_cast<PipetteLayerOperations>(layerSpec[0]);
393 
394  std::map<std::string, std::string> properties;
395  if(bmd.colormapHelper)
396  {
397  properties = bmd.colormapHelper->getProperties();
398  }
399  if(pipetteLayerOperation)
400  {
401  properties[PIPETTE_PROPERTY_NAME] = "";
402  }
403  properties[METADATA_PROPERTY_NAME] = "";
404 
405  auto tiledBitmapPresentation =
406  TiledBitmapPresentation::create(fileName, bmd, tiledBitmap, properties, colormapHelper, pipetteLayerOperation);
407  tiledBitmapPresentation->add(load(tiledBitmap->progressInterface()));
408 
409  if(bmd.aspectRatio)
410  {
411  result = TransformPresentation::create(tiledBitmapPresentation, TransformationData::create(*bmd.aspectRatio));
412  }
413  else
414  {
415  result = tiledBitmapPresentation;
416  }
417  }
418  return result;
419  }
Here is the call graph for this function:

Member Data Documentation

◆ openTiledBitmapInterface

OpenTiledBitmapInterface::Ptr anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::openTiledBitmapInterface
private

The documentation for this class was generated from the following file:
load
void load(GtkFileFilterInfo const &info)
Definition: loader.cc:238
Layer::Ptr
boost::shared_ptr< Layer > Ptr
Definition: tiledbitmaplayer.hh:247
TiledBitmap::create
static Ptr create(int bitmapWidth, int bitmapHeight, LayerSpec const &ls)
Definition: tiled-bitmap.cc:70
Scroom::TiledBitmap::LayerSpecForBitmap
LayerSpecResult LayerSpecForBitmap(const BitmapMetaData &bitmapMetaData)
Definition: layerspecforbitmap.cc:228
LayerSpec
std::vector< LayerOperations::Ptr > LayerSpec
Definition: tiledbitmapinterface.hh:190
Scroom::TiledBitmap::BitmapMetaData
Definition: opentiledbitmapinterface.hh:41
PIPETTE_PROPERTY_NAME
const std::string PIPETTE_PROPERTY_NAME
Definition: pipetteviewinterface.hh:14
Scroom::TiledBitmap::ReloadFunction
std::function< Scroom::Utils::Stuff(const ProgressInterface::Ptr &)> ReloadFunction
Definition: opentiledbitmapinterface.hh:39
TransformationData::create
static Ptr create()
Definition: transformpresentation.cc:28
Scroom::TiledBitmap::BitmapMetaData::aspectRatio
boost::optional< Scroom::Utils::Point< double > > aspectRatio
Definition: opentiledbitmapinterface.hh:47
METADATA_PROPERTY_NAME
const std::string METADATA_PROPERTY_NAME
Definition: showmetadatainterface.hh:16
PresentationInterface::Ptr
boost::shared_ptr< PresentationInterface > Ptr
Definition: presentationinterface.hh:74
anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::openTiledBitmapInterface
OpenTiledBitmapInterface::Ptr openTiledBitmapInterface
Definition: tiledbitmappresentation.cc:357
ColormapHelperBase::Ptr
boost::shared_ptr< ColormapHelperBase > Ptr
Definition: colormappable.hh:160
anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::OpenTiledBitmapAsPresentation
OpenTiledBitmapAsPresentation(OpenTiledBitmapInterface::Ptr openTiledBitmapInterface_)
Definition: tiledbitmappresentation.cc:371
TransformPresentation::create
static Ptr create(PresentationInterface::Ptr const &presentation, TransformationData::Ptr const &transformationData)
Definition: transformpresentation.cc:51
Scroom::TiledBitmap::BitmapMetaData::colormapHelper
ColormapHelperBase::Ptr colormapHelper
Definition: opentiledbitmapinterface.hh:48
anonymous_namespace{tiledbitmappresentation.cc}::TiledBitmapPresentation::create
static TiledBitmapPresentation::Ptr create(std::string name_, BitmapMetaData bmd_, TiledBitmapInterface::Ptr tbi_, std::map< std::string, std::string > properties_, ColormapHelperBase::Ptr colormapHelper_, PipetteLayerOperations::Ptr pipetteLayerOperation_)
Definition: tiledbitmappresentation.cc:78
anonymous_namespace{tiledbitmappresentation.cc}::OpenTiledBitmapAsPresentation::Ptr
boost::shared_ptr< OpenTiledBitmapAsPresentation > Ptr
Definition: tiledbitmappresentation.cc:354
PipetteLayerOperations::Ptr
boost::shared_ptr< PipetteLayerOperations > Ptr
Definition: pipettelayeroperations.hh:21