OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimPluginLibrary.cpp
Go to the documentation of this file.
1 //*******************************************************************
3 // License: LGPL
4 //
5 // See LICENSE.txt file in the top level directory for more details.
6 //
7 // Author: Garrett Potts
8 //
9 //*************************************************************************
10 // $Id: ossimPluginLibrary.cpp 20694 2012-03-19 12:22:05Z dburken $
12 #include <iostream>
13 
16  m_info(0)
17 {
18 }
19 
21  :ossimDynamicLibrary(name),
22  m_options(options),
23  m_info(0)
24 {
25  initialize();
26 }
27 
29 {
30  finalize();
31 }
32 
34 {
35  if(!isLoaded())
36  {
37  load();
38  }
39 
40  ossimSharedLibraryInitializePtr init = (ossimSharedLibraryInitializePtr)getSymbol("ossimSharedLibraryInitialize");
41  if(init)
42  {
43  init(&m_info, m_options.c_str());
44  }
45 }
46 
48 {
49  ossimSharedLibraryFinalizePtr finalizeLib = (ossimSharedLibraryFinalizePtr)getSymbol("ossimSharedLibraryFinalize");
50  if(finalizeLib)
51  {
52  finalizeLib();
53  }
54 
55  unload();
56 }
57 
59 {
60  ossimString result;
61 
63  {
64  result = m_info->getDescription();
65  }
66 
67  return result;
68 }
69 
70 void ossimPluginLibrary::getClassNames(std::vector<ossimString>& classNames)const
71 {
73  {
74  ossim_int32 idx = 0;
75  ossim_int32 numObjects = 0;
76 
77  numObjects = m_info->getNumberOfClassNames();
78  for(idx = 0; idx < numObjects; ++idx)
79  {
80  classNames.push_back(m_info->getClassName(idx));
81  }
82  }
83 }
84 
86 {
87  m_options = options;
88 
89 }
void setOptions(const ossimString &options)
ossimSharedLibraryGetNumberOfClassNamesPtr getNumberOfClassNames
void * getSymbol(const ossimString &name) const
ossimSharedObjectInfo * m_info
ossimSharedLibraryGetDescriptionPtr getDescription
void(* ossimSharedLibraryInitializePtr)(ossimSharedObjectInfo **info, const char *options)
ossimSharedLibraryGetClassNamesPtr getClassName
void getClassNames(std::vector< ossimString > &classNames) const
ossimString getDescription() const
void(* ossimSharedLibraryFinalizePtr)()
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string&#39;s contents...
Definition: ossimString.h:396
int ossim_int32