I borrowed some code from TikZ circuits: symbol for gas discharge tube? to define my own symbol. The inner arc should have an arrow at one end, what I do not manage to get. What's wrong with my code? Here's my attempt:
\documentclass{article}
\usepackage{tikz}
\begin{document}
\makeatletter
\pgfdeclareshape{circulator}
{
\inheritsavedanchors[from=circle]
\inheritanchor[from=circle]{center}
\inheritanchor[from=circle]{north}
\inheritanchor[from=circle]{south}
\inheritanchor[from=circle]{east}
\inheritanchor[from=circle]{west}
\inheritanchor[from=circle]{north east}
\inheritanchor[from=circle]{north west}
\inheritanchor[from=circle]{south east}
\inheritanchor[from=circle]{south west}
\inheritanchor[from=circle]{input}
\inheritanchor[from=circle]{output}
\inheritanchorborder[from=circle]
\backgroundpath{
\pgf@process{\radius}
\pgfutil@tempdima=\radius
\pgfpathcircle{\centerpoint}{\pgfutil@tempdima}
\pgfsetarrowsstart{latex}
\pgfpathmoveto{\pgfpoint{.7\pgfutil@tempdima}{0pt}}
\pgfpatharc{0}{120}{.7\pgfutil@tempdima}
\pgfusepath{stroke}
}
}
\makeatother
\begin{tikzpicture}
\node [circulator] at (0,0) {};
\end{tikzpicture}
\end{document}


