00001
00007 #ifndef VIEWLAYER_H
00008 #define VIEWLAYER_H
00009
00010
00011 #if _MSC_VER > 1000
00012 #pragma once
00013 #endif // _MSC_VER > 1000
00014 #pragma warning( disable : 4786 )
00015
00016 #include <list>
00017 #include <string>
00018
00019 #include <boost/shared_ptr.hpp>
00020 #include <boost/scoped_ptr.hpp>
00021
00022
00023 #ifndef EDIS_VIEWLAYER_H
00024 struct _Edis_ViewLayer;
00025 typedef struct _Edis_ViewLayer Edis_ViewLayer;
00026 #endif
00027
00028
00029 namespace Imagine
00030 {
00034 class ViewLayer
00035 {
00036 public:
00037
00038 ViewLayer();
00039 ViewLayer( ViewLayer const & vl );
00040 ViewLayer( Edis_ViewLayer * vwl );
00041
00042 virtual ~ViewLayer();
00043
00045 void reset( Edis_ViewLayer * vwl );
00046
00048 Edis_ViewLayer * viewLayer();
00049
00051 std::string filename();
00052
00060 std::string longName();
00061
00068 std::string shortName();
00069
00070
00072 std::list<std::string> layerNames();
00073
00074 private:
00075
00077 struct Imp;
00078
00079 boost::scoped_ptr<Imp> imp_;
00080 };
00081
00082 }
00083
00084 #endif