¿Cuál es el punto de una función virtual pura privada?

Encontré el siguiente código en un archivo de encabezado: class Engine { public: void SetState( int var, bool val ); { SetStateBool( int var, bool val ); } void SetState( int var, int val ); { SetStateInt( int var, int val ); } private: virtual void SetStateBool(int var, bool val ) = 0;...