Support to new driver

It should be compatible with previous versions. Tell me if you think that I've coded something the bad way
Before opening this pull request I tried it. But it throws some exception that default argument should be declared only in header file.