I’m not sure what you mean by
“By default my class is not planned to be used as a blueprint”
The terminology is a bit vague at the moment in c++
there are several different uses of the word blueprint
I will explain the 3 that I know of
1. blueprint, as in blueprint graphs: this is where you see all the nodes connecting and people doing game logic using blueprints instead of c++
2. Anim blueprint, a special kind of blueprint graph
3. Blueprint, as a special cases of a base c++ class: These are classes, you use them in c++ directly, just like you would your normal c++ classes. These have nothing to do with the nodes or graphs and you are actually using C++ not blueprint node logic
Example of using a Blueprinted class
You use blueprint classes the same way you use regular base classes, here’s an example of spawning a blueprinted class, with specific values set in the editor, but all actual game logic done in c++
//get the blueprint of the base class. The base class of CreatureClass is AEvolverWarrior, but CreatureClass is a blueprinted version with special values set
static ConstructorHelpers::FObjectFinder EvolverOb(TEXT("Blueprint'/Game/Blueprints/EvolverWarriorBP.EvolverWarriorBP'"));
if (EvolverOb.Object != NULL)
{
CreatureClass = (UClass*)EvolverOb.Object->GeneratedClass;
}
//spawn the creature from the blueprinted class
//spawn creature
AEvolverWarrior* NewCreature =
GetWorld()->SpawnActor(CreatureClass, TestLocation, GetControlRotation(),SpawnInfo );
//more c++ game logic
so you see I am not using the base class AEvolverWarrior, I am using the blueprinted version of that base class.
but all game logic is done entirely in the c++
So realize that blueprints is a bit of a vague term at the moment,
and one definition of blueprints is special version of your base c++ class designed to make setting properties and making different variations using one base c++ class very easy.
It really is a wonderful system and has nothing to do with blueprint nodes 
Rama