A gstreamermm Gst::Bin example.
#include <gstreamermm.h>
int main(int argc, char *argv[])
{
  
  
  
  try
  {
    bin->add(fakesrc)->add(fakesink);
  }
  {
    std::cerr << 
"Exception while adding: " << ex.what() << 
std::endl;
     return 1;
  }
  
  
  Glib::RefPtr<Gst::Bin> playbin_bin = playbin_bin.cast_static(playbin);
  if (!playbin_bin)
  {
    std::cerr << 
"Cannot find playbin element" << 
std::endl;
    return 1;
  }
  
  std::cout << 
"List of elements in the container: " << 
std::endl;
   {
  }
  
  
  bin->signal_element_removed().connect(
    [] (const Glib::RefPtr<Gst::Element>& removed_element)
    {
      std::cout << "Element '" << removed_element->get_name()
                << 
"' has been removed from the bin" << 
std::endl;
    }
  );
  bin->remove(fakesink);
  std::cout << 
"returning from application..." << 
std::endl;
  return 0;
}