357 lines
21 KiB
XML
357 lines
21 KiB
XML
<?xml version='1.0' encoding='UTF-8' standalone='no'?>
|
|
<doxygen xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="compound.xsd" version="1.9.1" xml:lang="en-US">
|
|
<compounddef id="classtf_1_1TFProfObserver" kind="class" language="C++" prot="public">
|
|
<compoundname>tf::TFProfObserver</compoundname>
|
|
<basecompoundref refid="classtf_1_1ObserverInterface" prot="public" virt="non-virtual">tf::ObserverInterface</basecompoundref>
|
|
<includes refid="observer_8hpp" local="no">taskflow/core/observer.hpp</includes>
|
|
<innerclass refid="structtf_1_1TFProfObserver_1_1Summary" prot="private">tf::TFProfObserver::Summary</innerclass>
|
|
<innerclass refid="structtf_1_1TFProfObserver_1_1TaskSummary" prot="private">tf::TFProfObserver::TaskSummary</innerclass>
|
|
<innerclass refid="structtf_1_1TFProfObserver_1_1WorkerSummary" prot="private">tf::TFProfObserver::WorkerSummary</innerclass>
|
|
<sectiondef kind="friend">
|
|
<memberdef kind="friend" id="classtf_1_1TFProfObserver_1a763b2f90bc53f92d680a635fe28e858e" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
|
|
<type>class</type>
|
|
<definition>friend class Executor</definition>
|
|
<argsstring></argsstring>
|
|
<name>Executor</name>
|
|
<param>
|
|
<type><ref refid="classtf_1_1Executor" kindref="compound">Executor</ref></type>
|
|
</param>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="443" column="3" bodyfile="taskflow/core/observer.hpp" bodystart="443" bodyend="-1"/>
|
|
</memberdef>
|
|
<memberdef kind="friend" id="classtf_1_1TFProfObserver_1a7857257f009bf5cae6bda4505fffbd2d" prot="private" static="no" const="no" explicit="no" inline="no" virt="non-virtual">
|
|
<type>class</type>
|
|
<definition>friend class TFProfManager</definition>
|
|
<argsstring></argsstring>
|
|
<name>TFProfManager</name>
|
|
<param>
|
|
<type>TFProfManager</type>
|
|
</param>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="444" column="3" bodyfile="taskflow/core/observer.hpp" bodystart="444" bodyend="-1"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<sectiondef kind="private-attrib">
|
|
<memberdef kind="variable" id="classtf_1_1TFProfObserver_1a38776d45d5d762b56c28c034d71170a9" prot="private" static="no" mutable="no">
|
|
<type>Timeline</type>
|
|
<definition>Timeline tf::TFProfObserver::_timeline</definition>
|
|
<argsstring></argsstring>
|
|
<name>_timeline</name>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="522" column="14" bodyfile="taskflow/core/observer.hpp" bodystart="522" bodyend="-1"/>
|
|
</memberdef>
|
|
<memberdef kind="variable" id="classtf_1_1TFProfObserver_1a07f9db5edc30436d8ec55bdaecca5aaa" prot="private" static="no" mutable="no">
|
|
<type><ref refid="cpp/container/vector" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::vector</ref>< <ref refid="cpp/container/stack" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::stack</ref>< <ref refid="namespacetf_1a8cff4bbd797dde4dfab096c3cc657833" kindref="member">observer_stamp_t</ref> > ></type>
|
|
<definition>std::vector<std::stack<observer_stamp_t> > tf::TFProfObserver::_stacks</definition>
|
|
<argsstring></argsstring>
|
|
<name>_stacks</name>
|
|
<briefdescription>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="524" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="524" bodyend="-1"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<sectiondef kind="public-func">
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a9f1e839e2a8d3abd0b91ac454f0d078b" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::dump</definition>
|
|
<argsstring>(std::ostream &ostream) const</argsstring>
|
|
<name>dump</name>
|
|
<param>
|
|
<type><ref refid="cpp/io/basic_ostream" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::ostream</ref> &</type>
|
|
<declname>ostream</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>dumps the timelines into a <ulink url="https://taskflow.github.io/tfprof/">Taskflow Profiler</ulink> format through an output stream </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="488" column="10" bodyfile="taskflow/core/observer.hpp" bodystart="725" bodyend="795"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a59e82cb3f9b0ada38aa1ddea14f14d02" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type><ref refid="cpp/string/basic_string" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::string</ref></type>
|
|
<definition>std::string tf::TFProfObserver::dump</definition>
|
|
<argsstring>() const</argsstring>
|
|
<name>dump</name>
|
|
<briefdescription>
|
|
<para>dumps the timelines into a JSON string </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="493" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="798" bodyend="802"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a6102cedbaf2e40f8b8ff916827297198" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::summary</definition>
|
|
<argsstring>(std::ostream &ostream) const</argsstring>
|
|
<name>summary</name>
|
|
<param>
|
|
<type><ref refid="cpp/io/basic_ostream" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::ostream</ref> &</type>
|
|
<declname>ostream</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>shows the summary report through an output stream </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="498" column="10" bodyfile="taskflow/core/observer.hpp" bodystart="805" bodyend="893"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a6f12a927a328bd594cf6c3c3a6bfe992" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type><ref refid="cpp/string/basic_string" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::string</ref></type>
|
|
<definition>std::string tf::TFProfObserver::summary</definition>
|
|
<argsstring>() const</argsstring>
|
|
<name>summary</name>
|
|
<briefdescription>
|
|
<para>returns the summary report in a string </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="503" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="896" bodyend="900"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a5e1f63034a96a5a79cef6da412efd203" prot="public" static="no" const="no" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::clear</definition>
|
|
<argsstring>()</argsstring>
|
|
<name>clear</name>
|
|
<briefdescription>
|
|
<para>clears the timeline data </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="508" column="10" bodyfile="taskflow/core/observer.hpp" bodystart="713" bodyend="722"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a8b3b0bee8762af654cfebd2bb2ee98ed" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>size_t</type>
|
|
<definition>size_t tf::TFProfObserver::num_tasks</definition>
|
|
<argsstring>() const</argsstring>
|
|
<name>num_tasks</name>
|
|
<briefdescription>
|
|
<para>queries the number of tasks observed </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="513" column="12" bodyfile="taskflow/core/observer.hpp" bodystart="903" bodyend="911"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a62ccf28199e35748903559848072fc29" prot="public" static="no" const="yes" explicit="no" inline="yes" virt="non-virtual">
|
|
<type>size_t</type>
|
|
<definition>size_t tf::TFProfObserver::num_workers</definition>
|
|
<argsstring>() const</argsstring>
|
|
<name>num_workers</name>
|
|
<briefdescription>
|
|
<para>queries the number of observed workers </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="518" column="12" bodyfile="taskflow/core/observer.hpp" bodystart="914" bodyend="920"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<sectiondef kind="private-func">
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1aa030d8154dd03aea3b8fa8ce42e1151b" prot="private" static="no" const="no" explicit="no" inline="yes" final="yes" virt="virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::set_up</definition>
|
|
<argsstring>(size_t num_workers) override final</argsstring>
|
|
<name>set_up</name>
|
|
<reimplements refid="classtf_1_1ObserverInterface_1a41e6e62f12bf9d9dc4fa74632f6825d9">set_up</reimplements>
|
|
<param>
|
|
<type>size_t</type>
|
|
<declname>num_workers</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>constructor-like method to call when the executor observer is fully created </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
<para><parameterlist kind="param"><parameteritem>
|
|
<parameternamelist>
|
|
<parametername>num_workers</parametername>
|
|
</parameternamelist>
|
|
<parameterdescription>
|
|
<para>the number of the worker threads in the executor </para>
|
|
</parameterdescription>
|
|
</parameteritem>
|
|
</parameterlist>
|
|
</para>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="526" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="681" bodyend="686"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1a5debfce27f7e012d22872c134b261c63" prot="private" static="no" const="no" explicit="no" inline="yes" final="yes" virt="virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::on_entry</definition>
|
|
<argsstring>(WorkerView, TaskView) override final</argsstring>
|
|
<name>on_entry</name>
|
|
<reimplements refid="classtf_1_1ObserverInterface_1a8225fcacb03089677a1efc4b16b734cc">on_entry</reimplements>
|
|
<param>
|
|
<type><ref refid="classtf_1_1WorkerView" kindref="compound">WorkerView</ref></type>
|
|
<declname>wv</declname>
|
|
</param>
|
|
<param>
|
|
<type><ref refid="classtf_1_1TaskView" kindref="compound">TaskView</ref></type>
|
|
<declname>task_view</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>method to call before a worker thread executes a closure </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
<para><parameterlist kind="param"><parameteritem>
|
|
<parameternamelist>
|
|
<parametername>wv</parametername>
|
|
</parameternamelist>
|
|
<parameterdescription>
|
|
<para>an immutable view of this worker thread </para>
|
|
</parameterdescription>
|
|
</parameteritem>
|
|
<parameteritem>
|
|
<parameternamelist>
|
|
<parametername>task_view</parametername>
|
|
</parameternamelist>
|
|
<parameterdescription>
|
|
<para>a constant wrapper object to the task </para>
|
|
</parameterdescription>
|
|
</parameteritem>
|
|
</parameterlist>
|
|
</para>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="527" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="689" bodyend="691"/>
|
|
</memberdef>
|
|
<memberdef kind="function" id="classtf_1_1TFProfObserver_1af3a1630b5b1db5341a239a5d4c12c891" prot="private" static="no" const="no" explicit="no" inline="yes" final="yes" virt="virtual">
|
|
<type>void</type>
|
|
<definition>void tf::TFProfObserver::on_exit</definition>
|
|
<argsstring>(WorkerView, TaskView) override final</argsstring>
|
|
<name>on_exit</name>
|
|
<reimplements refid="classtf_1_1ObserverInterface_1aa22f5378154653f08d9a58326bda4754">on_exit</reimplements>
|
|
<param>
|
|
<type><ref refid="classtf_1_1WorkerView" kindref="compound">WorkerView</ref></type>
|
|
<declname>wv</declname>
|
|
</param>
|
|
<param>
|
|
<type><ref refid="classtf_1_1TaskView" kindref="compound">TaskView</ref></type>
|
|
<declname>task_view</declname>
|
|
</param>
|
|
<briefdescription>
|
|
<para>method to call after a worker thread executed a closure </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
<para><parameterlist kind="param"><parameteritem>
|
|
<parameternamelist>
|
|
<parametername>wv</parametername>
|
|
</parameternamelist>
|
|
<parameterdescription>
|
|
<para>an immutable view of this worker thread </para>
|
|
</parameterdescription>
|
|
</parameteritem>
|
|
<parameteritem>
|
|
<parameternamelist>
|
|
<parametername>task_view</parametername>
|
|
</parameternamelist>
|
|
<parameterdescription>
|
|
<para>a constant wrapper object to the task </para>
|
|
</parameterdescription>
|
|
</parameteritem>
|
|
</parameterlist>
|
|
</para>
|
|
</detaileddescription>
|
|
<inbodydescription>
|
|
</inbodydescription>
|
|
<location file="taskflow/core/observer.hpp" line="528" column="17" bodyfile="taskflow/core/observer.hpp" bodystart="694" bodyend="710"/>
|
|
</memberdef>
|
|
</sectiondef>
|
|
<briefdescription>
|
|
<para>class to create an observer based on the built-in taskflow profiler format </para>
|
|
</briefdescription>
|
|
<detaileddescription>
|
|
<para>A <ref refid="classtf_1_1TFProfObserver" kindref="compound">tf::TFProfObserver</ref> inherits <ref refid="classtf_1_1ObserverInterface" kindref="compound">tf::ObserverInterface</ref> and defines methods to dump the observed thread activities into a format that can be visualized through <ulink url="https://taskflow.github.io/tfprof/">Taskflow Profiler</ulink>.</para>
|
|
<para><programlisting filename=".cpp"><codeline><highlight class="normal"><ref refid="classtf_1_1Taskflow" kindref="compound">tf::Taskflow</ref><sp/>taskflow;</highlight></codeline>
|
|
<codeline><highlight class="normal"><ref refid="classtf_1_1Executor" kindref="compound">tf::Executor</ref><sp/>executor;</highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight><highlight class="comment">//<sp/>insert<sp/>tasks<sp/>into<sp/>taskflow</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight><highlight class="comment">//<sp/>...</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"><sp/><sp/></highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight><highlight class="comment">//<sp/>create<sp/>a<sp/>custom<sp/>observer</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"><ref refid="cpp/memory/shared_ptr" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::shared_ptr<tf::TFProfObserver></ref><sp/>observer<sp/>=<sp/>executor.<ref refid="classtf_1_1Executor_1ab5a793a0f2ce41cd49ca45e9f0a6962c" kindref="member">make_observer</ref><<ref refid="classtf_1_1TFProfObserver" kindref="compound">tf::TFProfObserver</ref>>();</highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight><highlight class="comment">//<sp/>run<sp/>the<sp/>taskflow</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal">executor.<ref refid="classtf_1_1Executor_1a8d08f0cb79e7b3780087975d13368a96" kindref="member">run</ref>(taskflow).wait();</highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal"></highlight><highlight class="comment">//<sp/>dump<sp/>the<sp/>thread<sp/>activities<sp/>to<sp/>Taskflow<sp/>Profiler<sp/>format.</highlight><highlight class="normal"></highlight></codeline>
|
|
<codeline><highlight class="normal">observer->dump(<ref refid="cpp/io/basic_ostream" kindref="compound" external="/home/thuang295/Code/taskflow/doxygen/cppreference-doxygen-web.tag.xml">std::cout</ref>);</highlight></codeline>
|
|
</programlisting> </para>
|
|
</detaileddescription>
|
|
<inheritancegraph>
|
|
<node id="2">
|
|
<label>tf::ObserverInterface</label>
|
|
<link refid="classtf_1_1ObserverInterface"/>
|
|
</node>
|
|
<node id="1">
|
|
<label>tf::TFProfObserver</label>
|
|
<link refid="classtf_1_1TFProfObserver"/>
|
|
<childnode refid="2" relation="public-inheritance">
|
|
</childnode>
|
|
</node>
|
|
</inheritancegraph>
|
|
<collaborationgraph>
|
|
<node id="2">
|
|
<label>tf::ObserverInterface</label>
|
|
<link refid="classtf_1_1ObserverInterface"/>
|
|
</node>
|
|
<node id="1">
|
|
<label>tf::TFProfObserver</label>
|
|
<link refid="classtf_1_1TFProfObserver"/>
|
|
<childnode refid="2" relation="public-inheritance">
|
|
</childnode>
|
|
</node>
|
|
</collaborationgraph>
|
|
<location file="taskflow/core/observer.hpp" line="441" column="1" bodyfile="taskflow/core/observer.hpp" bodystart="441" bodyend="529"/>
|
|
<listofallmembers>
|
|
<member refid="classtf_1_1TFProfObserver_1a07f9db5edc30436d8ec55bdaecca5aaa" prot="private" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>_stacks</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a38776d45d5d762b56c28c034d71170a9" prot="private" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>_timeline</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a5e1f63034a96a5a79cef6da412efd203" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>clear</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a9f1e839e2a8d3abd0b91ac454f0d078b" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>dump</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a59e82cb3f9b0ada38aa1ddea14f14d02" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>dump</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a763b2f90bc53f92d680a635fe28e858e" prot="private" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>Executor</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a8b3b0bee8762af654cfebd2bb2ee98ed" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>num_tasks</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a62ccf28199e35748903559848072fc29" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>num_workers</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a5debfce27f7e012d22872c134b261c63" prot="private" virt="virtual"><scope>tf::TFProfObserver</scope><name>on_entry</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1af3a1630b5b1db5341a239a5d4c12c891" prot="private" virt="virtual"><scope>tf::TFProfObserver</scope><name>on_exit</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1aa030d8154dd03aea3b8fa8ce42e1151b" prot="private" virt="virtual"><scope>tf::TFProfObserver</scope><name>set_up</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a6102cedbaf2e40f8b8ff916827297198" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>summary</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a6f12a927a328bd594cf6c3c3a6bfe992" prot="public" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>summary</name></member>
|
|
<member refid="classtf_1_1TFProfObserver_1a7857257f009bf5cae6bda4505fffbd2d" prot="private" virt="non-virtual"><scope>tf::TFProfObserver</scope><name>TFProfManager</name></member>
|
|
<member refid="classtf_1_1ObserverInterface_1adfd71c3af3ae2ea4f41eed26c1b6f604" prot="public" virt="virtual"><scope>tf::TFProfObserver</scope><name>~ObserverInterface</name></member>
|
|
</listofallmembers>
|
|
</compounddef>
|
|
</doxygen>
|