ScruffR is correct.
I find the behavior of the Arduino preprocessor annoying so I just give my main file a .cpp filename extension instead of .ino and add:
#include "Particle.h"
Using .cpp has the same effect as PARTICLE_NO_PREPROCESSOR except you only have one .cpp file, not both a .ino and .cpp files with the same contents, which is a pain for search in Workbench.