I know that the O2 masks provided in the flight deck are on demand. However the smoke HOODS provided by my carrier (Draeger) are no on demand and once the O2 starts generating it lasts for only about 15 minutes regardless of whether it is been worn or not!