cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
svlRenderTargets.h
Go to the documentation of this file.
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3 
4 /*
5 
6  Author(s): Balazs Vagvolgyi
7  Created on: 2009-03-12
8 
9  (C) Copyright 2006-2009 Johns Hopkins University (JHU), All Rights
10  Reserved.
11 
12 --- begin cisst license - do not edit ---
13 
14 This software is provided "as is" under an open source license, with
15 no warranty. The complete license can be found in license.txt and
16 http://www.cisst.org/cisst/license.txt.
17 
18 --- end cisst license ---
19 
20 */
21 
22 #ifndef _svlRenderTargets_h
23 #define _svlRenderTargets_h
24 
27 
28 // Always include last!
30 
31 
32 class svlRenderTargets;
33 
35 {
36 friend class svlRenderTargets;
37 
38 protected:
40  virtual ~svlRenderTargetBase() {}
41 
42 public:
43  virtual bool SetImage(unsigned char* buffer, int offsetx, int offsety, bool vflip) = 0;
44  virtual unsigned int GetWidth() = 0;
45  virtual unsigned int GetHeight() = 0;
46 };
47 
48 
50 {
51 private:
54 
55 public:
56  static svlRenderTargets* Instance();
57  static svlRenderTargetBase* Get(unsigned int deviceID);
58  static void Release(unsigned int deviceID);
59  static void ReleaseAll();
60 
61 private:
62  vctDynamicVector<int> TargetDeviceID;
64 };
65 
66 
67 #endif // _svlRenderTargets_h
68 
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
svlRenderTargetBase()
Definition: svlRenderTargets.h:39
Definition: svlRenderTargets.h:49
virtual ~svlRenderTargetBase()
Definition: svlRenderTargets.h:40
Declaration of vctDynamicVector.
Macros to export the symbols of cisstStereoVision (in a Dll).
Definition: svlRenderTargets.h:34