OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimImageDataFactory.h
Go to the documentation of this file.
1 //*******************************************************************
2 // Copyright (C) 2000 ImageLinks Inc.
3 //
4 // License: MIT
5 //
6 // See LICENSE.txt file in the top level directory for more details.
7 //
8 // Author: Garrett Potts
9 //
10 // Description:
11 //
12 //*************************************************************************
13 // $Id: ossimImageDataFactory.h 13474 2008-08-22 14:20:42Z gpotts $
14 #ifndef ossimImageDataFactory_HEADER
15 #define ossimImageDataFactory_HEADER
16 
18 #include <ossim/base/ossimRefPtr.h>
19 #include <mutex>
20 class ossimSource;
21 class ossimImageSource;
22 
23 
29 {
30 public:
31  virtual ~ossimImageDataFactory();
32  static ossimImageDataFactory* instance();
33 
34  virtual ossimRefPtr<ossimImageData> create(ossimSource* owner,
35  ossimScalarType scalar,
36  ossim_uint32 bands = 1)const;
37 
38  virtual ossimRefPtr<ossimImageData> create(ossimSource* owner,
39  ossimScalarType scalar,
40  ossim_uint32 bands,
41  ossim_uint32 width,
42  ossim_uint32 height)const;
43 
44  virtual ossimRefPtr<ossimImageData> create(
45  ossimSource* owner,
46  ossim_uint32 bands,
47  ossimImageSource* inputSource)const;
48 
49 
50  virtual ossimRefPtr<ossimImageData> create(
51  ossimSource* owner,
52  ossimImageSource* inputSource)const;
53 
54 protected:
55  ossimImageDataFactory(); // hide
57  void operator = (ossimImageDataFactory&){}// hide
58 
60  static std::mutex theInstanceMutex;
61 };
62 
63 #endif
ossimImageDataFactory(const ossimImageDataFactory &)
static std::mutex theInstanceMutex
unsigned int ossim_uint32
ossimScalarType
static ossimImageDataFactory * theInstance
#define OSSIM_DLL