\doxysection{Dwarf\+\_\+\+Obj\+\_\+\+Access\+\_\+\+Methods\+\_\+a\+\_\+s Struct Reference}
\hypertarget{struct_dwarf___obj___access___methods__a__s}{}\label{struct_dwarf___obj___access___methods__a__s}\index{Dwarf\_Obj\_Access\_Methods\_a\_s@{Dwarf\_Obj\_Access\_Methods\_a\_s}}


{\ttfamily \+\#include $<$libdwarf.\+h$>$}

\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_ab4f36fd1390bd18b4f5b4c7f8e7e0a1b}\label{struct_dwarf___obj___access___methods__a__s_ab4f36fd1390bd18b4f5b4c7f8e7e0a1b} 
int(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+section\+\_\+info} )(void \texorpdfstring{$\ast$}{*}obj, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} section\+\_\+index, \doxymbox{\hyperlink{group__allstructs_ga99a5f45f60883d323df123b252139c79}{Dwarf\+\_\+\+Obj\+\_\+\+Access\+\_\+\+Section\+\_\+a}} \texorpdfstring{$\ast$}{*}return\+\_\+section, int \texorpdfstring{$\ast$}{*}error)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_aa8dd86249c518eb2591540c348e1aee4}\label{struct_dwarf___obj___access___methods__a__s_aa8dd86249c518eb2591540c348e1aee4} 
\doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}}(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+byte\+\_\+order} )(void \texorpdfstring{$\ast$}{*}obj)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_afe2c5d0943599602077814c376dbe102}\label{struct_dwarf___obj___access___methods__a__s_afe2c5d0943599602077814c376dbe102} 
\doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}}(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+length\+\_\+size} )(void \texorpdfstring{$\ast$}{*}obj)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_acb43fc2a90a63508e60f8ddb41fc2917}\label{struct_dwarf___obj___access___methods__a__s_acb43fc2a90a63508e60f8ddb41fc2917} 
\doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}}(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+pointer\+\_\+size} )(void \texorpdfstring{$\ast$}{*}obj)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_acf672a6d7fbbeffc405b5c24e847b3e5}\label{struct_dwarf___obj___access___methods__a__s_acf672a6d7fbbeffc405b5c24e847b3e5} 
\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}}(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+filesize} )(void \texorpdfstring{$\ast$}{*}obj)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_a609493cb4bbb3788e22c373d7110f0eb}\label{struct_dwarf___obj___access___methods__a__s_a609493cb4bbb3788e22c373d7110f0eb} 
\doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}}(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+get\+\_\+section\+\_\+count} )(void \texorpdfstring{$\ast$}{*}obj)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_ae34ff761e214d7a480b9bee2ec8b09cd}\label{struct_dwarf___obj___access___methods__a__s_ae34ff761e214d7a480b9bee2ec8b09cd} 
int(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+load\+\_\+section} )(void \texorpdfstring{$\ast$}{*}obj, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} dw\+\_\+section\+\_\+index, \doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+data, int \texorpdfstring{$\ast$}{*}dw\+\_\+error)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_acba0ec83fe5b66fbf818e577507c1348}\label{struct_dwarf___obj___access___methods__a__s_acba0ec83fe5b66fbf818e577507c1348} 
int(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+relocate\+\_\+a\+\_\+section} )(void \texorpdfstring{$\ast$}{*}obj, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} section\+\_\+index, \doxymbox{\hyperlink{group__allstructs_gac2ba1e1c1b70a3191506b414195ca807}{Dwarf\+\_\+\+Debug}} dbg, int \texorpdfstring{$\ast$}{*}error)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_a90b10ee16aba00bcfc96646a36a86e43}\label{struct_dwarf___obj___access___methods__a__s_a90b10ee16aba00bcfc96646a36a86e43} 
int(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+load\+\_\+section\+\_\+a} )(void \texorpdfstring{$\ast$}{*}obj, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} dw\+\_\+section\+\_\+index, enum \doxymbox{\hyperlink{group__allstructs_ga8e19573b56799157d063d8cc2828f69b}{Dwarf\+\_\+\+Sec\+\_\+\+Alloc\+\_\+\+Pref}} \texorpdfstring{$\ast$}{*}dw\+\_\+alloc\+\_\+pref, \doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+data\+\_\+ptr, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+data\+\_\+len, \doxymbox{\hyperlink{group__basicdatatypes_ga52e439e652a1a30277679f64f83cc0fe}{Dwarf\+\_\+\+Small}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+mmap\+\_\+base\+\_\+ptr, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+mmap\+\_\+offset, \doxymbox{\hyperlink{group__basicdatatypes_ga5de64bb9627534a24dcbccc327916265}{Dwarf\+\_\+\+Unsigned}} \texorpdfstring{$\ast$}{*}dw\+\_\+return\+\_\+mmap\+\_\+len, int \texorpdfstring{$\ast$}{*}dw\+\_\+error)
\item 
\Hypertarget{struct_dwarf___obj___access___methods__a__s_ad60f388e7da6912488bc7f7571ed4993}\label{struct_dwarf___obj___access___methods__a__s_ad60f388e7da6912488bc7f7571ed4993} 
void(\texorpdfstring{$\ast$}{*} {\bfseries om\+\_\+finish} )(void \texorpdfstring{$\ast$}{*}obj)
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The functions we need to access object data from libdwarf are declared here.

Unless you are reading object sections with your own code (as in \doxylink{jitreader_8c}{src/\+bin/\+dwarfexample/\+jitreader.\+c}) you will not need to fill in or use the struct.

om\+\_\+relocate\+\_\+a\+\_\+section uses malloc/\+read to get section contents and returns a pointer to the malloc space through dw\+\_\+return\+\_\+data, which is recorded in the applicable section data.

om\+\_\+load\+\_\+section\+\_\+a uses either malloc/\+read or mmap and consequently returns more data as needed for eventual free() or munmap(). 

The documentation for this struct was generated from the following file:\+\begin{DoxyCompactItemize}
\item 
D:\+/\+\+W/\+\+B/\+src/\+libdwarf-\/2.\+3.\+1/\+src/\+lib/\+libdwarf/\+\doxymbox{\hyperlink{libdwarf_8h}{libdwarf.\+h}}\end{DoxyCompactItemize}
