SlideShare a Scribd company logo
1 of 8
Download to read offline
template <typename T>
class know
{
public: // Written by Alexey
T m;
know():m(0){}
T operator ++(T){return m;}
};
typedef int C;
int main(int argc, _TCHAR* argv[])
{
auto I = know<C>()++;
return 0;
}
skype:alexey.zaytsev1706
mailto:Alexey.Zaytsev@gmx.net
375 29 8744587
Our Executable ResponsibilityUser works with programms Driver processing
User wants to print
initial
Explorer plug-in activity
Driver Part Entering
Driver: work
Did User open setup
Dialog?
Profile: preparation
Yes
Active Profile adjusted.
Will be acquired by
printer.
Print executed.
NO
Active profile is
ok for user.
Printing: With FULLY Prepared data
/GUID, PID, file name/
Our Executable with GUID for profile as a parameter
Profile: Load/Save
Should we Present UI
Yes
NO
Present UI. Ask For
Setings,
Generate PDF. Start doing post
actions.
Here we have full array
of EMFs for current
Profile.
Print Settings Changed / Need
regenerate preview
Our Executable Printing Activity
Printing: With FULLY Prepared data
/GUID, PID, file name/
Create New Process to
recreate EMFs
Wait for result.
Transfer it to Us
Do we have Original file Name. (Unchanged state also)
Ask For Target
Filename
Yes
NO
Yes
Clean Up. As Last Action.
(If requested In Profile)
Should We generate PDF
Request File Name
Send EMFs for
preview
We Have original
file source access?
Need Preview?
Wait For
Preview Data
Create a profile to just
Generate EMFs
Printing: With FULLY Prepared data
/GUID, PID, file name/
Present/Update
UI
Printing Original
We need to execute
an Action
CSubjectToProcess
# Data :unsigned char* {readOnly}
+ Identifier :int {readOnly}
+ Size :int {readOnly}
+ SubjectType :ESubjectType {readOnly}
+ Create(string, ESubjectType) :CSubjectToProcess
«property get, property»
+ getData() :unsigned char*
«property get»
+ getSize() :int
CProcessing
+ currentChange :CActiveChangeConsequence
+ ClearStepsChain() :int
+ Execute() :int
+ InsertStep(PrintingStep, int) :int
+ Step() :int
+ StepOver() :int
«property»
+ ActiveProfile() :CProfileCollection
+ Document() :CSubjectToProcess
«enumeration»
ESubjectType
file_for_print
profile
attachment
UIsettings
PrintingStep
Printing Step By Step::PrintProcess
+ profile :CProfileCollection
+ StepsCount :int {readOnly}
+ StepWeProcessing :int {readOnly}
+ ClearStepsChain() :int
+ InsertStep(PrintingStep, int) :int
+ StepOver() :int
«property, property get»
+ ActiveProfile() :CProfileCollection
+ Document() :CSubjectToProcess
PrintingStep
«interface»
Printing Step By Step::PrintingStep
+ identifier :int
+ Step(PrintProcess) :int
CUIPresent
+ Step(PrintProcess) :int
CLoadProfile
+ Create(CSubjectToProcess *, int) :int
+ Step(PrintProcess) :int
«interface»
SettingsSpecific::Collection
+ changed :bool
+ description :string
+ name :string
+ uniqueID :int {readOnly}
+ Duplicate(Collection*) :int
+ Item(string, ItemSettings*) :int
+ SetItem(string, string, ChangeConsequence*) :int
+ Undo(int) :int
CProfileCollection
+ Duplicate(Collection*) :int
+ Item(string, ItemSettings*) :int
+ SetItem(string, string, ChangeConsequence*) :int
+ Undo(int) :int
COpenFile
+ Step(PrintProcess) :int
CFilePath
# FileName :string
# FilePath :string
+ Create(string, ESubjectType) :CSubjectToProcess
«property»
+ FileName() :string
+ FilePath() :string
CMemoryData
+ Create(void*, int) :CSubjectToProcess
CSetupSibFormat
+ Step(PrintProcess) :int
CPrintExecute
+ Step(PrintProcess) :int
CFinalizeProcessing
+ Step(PrintProcess) :int
«interface»
SettingsSpecific::CollectionsList
+ AddCollection(Collection) :int
+ Collection(int, string*, string*, int*) :int
+ CollectionsCount() :int
+ LoadCollection(int, Collection*) :int
+ LoadInitialCollection(Collection*) :int
+ SetCollectionPosition(int, int) :int
CCollectionsList
+ AddCollection(Collection) :int
+ Collection(int, string*, string*, int*) :int
+ CollectionsCount() :int
+ LoadCollection(int, Collection*) :int
+ LoadInitialCollection(Collection*) :int
+ SetCollectionPosition(int, int) :int
FileCollectionSerializer
- storage :CFilePath
+ Load(CSubjectToProcess, CProfileCollection*) :int
+ Save(CProfileCollection) :int
«property»
+ Storage() :CSubjectToProcess
«interface»
ICollectionSerializer
+ Load(CSubjectToProcess, CProfileCollection*) :int
+ Save(CProfileCollection) :int
CibFormatCollectionSerializer
+ Load(CSubjectToProcess, CProfileCollection*) :int
+ Save(CProfileCollection) :int
«interface»
SettingsSpecific::ItemSettings
+ defaultValue :string {readOnly}
+ group :string
+ helpLineID :int {readOnly}
+ name :string {readOnly}
+ readonly :boolean {readOnly}
+ value :string {readOnly}
+ Marshaller(int, IItemSettingsMarshaller*) :int
CItemSettings
+ Marshaller(int, IItemSettingsMarshaller*) :int
«enumeration»
EMarshaller
marshallerSring
marshallerBool
marshallerInteger
marshallerCIBFormat
marshallerList
«interface»
IItemSettingsMarshaller
+ defaultValue :string {readOnly}
+ type :EMarshaller {readOnly}
+ CurrentValueAsList(Clist*) :int
+ ListOfPossibleValues(EMarshaller*, CList*) :int
+ PossibleToSetValue(string, boolean*) :int
+ SetValueForListAtPosition(string, integer) :int
+ ValueName(string*) :int
This is rather bit signs than actual enum.
So any class can support any type of
marshaller
this is rather information about - what
inside
«interface»
SettingsSpecific::ItemChange
+ item :ItemSettings* {readOnly}
+ oldValue :String {readOnly}
Marshaller works as list
for every items. as far as
we can strictly unite any
type to this.
CMarshallersProvider
+ Marshaller(string, IItemSettingsMarshaller) :int
«interface»
SettingsSpecific::
ChangeConsequence
+ identifier :int
+ Next() :ItemChange
+ Reset() :ItemChange
CDependencyRule
+ itemName :string {readOnly}
+ OnSetItem(string, string, ChangeConsequence*) :int
CActiveChangeConsequence
+ SuppressUI :boolean
+ AddChange(CItemChange) :int
+ Next() :ItemChange
+ Reset() :ItemChange
CItemChange
aggregation
CDependencyRulesTree
CIBFormatMarshaller
+ CurrentValueAsList(Clist*) :int
+ ListOfPossibleValues(EMarshaller*, CList*) :int
+ PossibleToSetValue(string, boolean*) :int
+ SetValueForListAtPosition(string, integer) :int
+ ValueName(string*) :int
XMLMarshaller
+ CurrentValueAsList(Clist*) :int
+ ListOfPossibleValues(EMarshaller*, CList*) :int
+ PossibleToSetValue(string, boolean*) :int
+ SetValueForListAtPosition(string, integer) :int
+ ValueName(string*) :int
when loading
default profile
{CDependencyRule}
«flow»
CItemChange
«flow»
«use»
CDependencyRule
«flow»
«use»
«use»
«use»
«use»
SettingsSpecific
+ Classes
+ ChangeConsequence
+ Collection
+ CollectionsList
+ ItemChange
+ ItemSettings
+ ValueMarshaller
SettingsSpecific::
Classes
Collection
ChangeConsequence
ItemSettings
ItemChange
Serializer
ValueMarshaller
Collection
ChangeConsequence
CollectionsList
ItemSettings
ItemChange
UIVision
Collection
ChangeConsequence
CollectionsList
ItemSettings
ItemChange
«interface»
SettingsSpecific::ItemSettings
+ defaultValue :string {readOnly}
+ group :string
+ helpLineID :int {readOnly}
+ name :string {readOnly}
+ readonly :boolean {readOnly}
+ value :string {readOnly}
+ Marshaller(int, IItemSettingsMarshaller*) :int
«interface»
SettingsSpecific::Collection
+ changed :bool
+ description :string
+ name :string
+ uniqueID :int {readOnly}
+ Duplicate(Collection*) :int
+ Item(string, ItemSettings*) :int
+ SetItem(string, string, ChangeConsequence*) :int
+ Undo(int) :int
«interface»
SettingsSpecific::
ChangeConsequence
+ identifier :int
+ Next() :ItemChange
+ Reset() :ItemChange
«interface»
SettingsSpecific::ItemChange
+ item :ItemSettings* {readOnly}
+ oldValue :String {readOnly}
«interface»
SettingsSpecific::CollectionsList
+ AddCollection(Collection) :int
+ Collection(int, string*, string*, int*) :int
+ CollectionsCount() :int
+ LoadCollection(int, Collection*) :int
+ LoadInitialCollection(Collection*) :int
+ SetCollectionPosition(int, int) :int
«interface»
SettingsSpecific::ValueMarshaller
+ Type :int
+ AcceptableString(string) :int
+ ActepableInteger(int) :int
+ TypedValue() :necessary type
This class should be visible With
concrete explicit realization - depends
on target type.
And serve to convert Setting string
value to/from another type: bool,
integer, list of values.
Also: For check possibility of using
concrete string value.
resume_Alexey_Zaytsev
resume_Alexey_Zaytsev
resume_Alexey_Zaytsev

More Related Content

What's hot

Print input-presentation
Print input-presentationPrint input-presentation
Print input-presentationMartin McBride
 
The Ring programming language version 1.10 book - Part 31 of 212
The Ring programming language version 1.10 book - Part 31 of 212The Ring programming language version 1.10 book - Part 31 of 212
The Ring programming language version 1.10 book - Part 31 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.6 book - Part 44 of 189
The Ring programming language version 1.6 book - Part 44 of 189The Ring programming language version 1.6 book - Part 44 of 189
The Ring programming language version 1.6 book - Part 44 of 189Mahmoud Samir Fayed
 
The Ring programming language version 1.6 book - Part 183 of 189
The Ring programming language version 1.6 book - Part 183 of 189The Ring programming language version 1.6 book - Part 183 of 189
The Ring programming language version 1.6 book - Part 183 of 189Mahmoud Samir Fayed
 
Using Scala Slick at FortyTwo
Using Scala Slick at FortyTwoUsing Scala Slick at FortyTwo
Using Scala Slick at FortyTwoEishay Smith
 
The Ring programming language version 1.9 book - Part 25 of 210
The Ring programming language version 1.9 book - Part 25 of 210The Ring programming language version 1.9 book - Part 25 of 210
The Ring programming language version 1.9 book - Part 25 of 210Mahmoud Samir Fayed
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional ProgrammingDmitry Buzdin
 
Json and SQL DB serialization Introduction with Play! and Slick
Json and SQL DB serialization Introduction with Play! and SlickJson and SQL DB serialization Introduction with Play! and Slick
Json and SQL DB serialization Introduction with Play! and SlickStephen Kemmerling
 
Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with ClojureDmitry Buzdin
 
Implementing a many-to-many Relationship with Slick
Implementing a many-to-many Relationship with SlickImplementing a many-to-many Relationship with Slick
Implementing a many-to-many Relationship with SlickHermann Hueck
 
Mozilla とブラウザゲーム
Mozilla とブラウザゲームMozilla とブラウザゲーム
Mozilla とブラウザゲームNoritada Shimizu
 
The Ring programming language version 1.2 book - Part 12 of 84
The Ring programming language version 1.2 book - Part 12 of 84The Ring programming language version 1.2 book - Part 12 of 84
The Ring programming language version 1.2 book - Part 12 of 84Mahmoud Samir Fayed
 
The Ring programming language version 1.2 book - Part 29 of 84
The Ring programming language version 1.2 book - Part 29 of 84The Ring programming language version 1.2 book - Part 29 of 84
The Ring programming language version 1.2 book - Part 29 of 84Mahmoud Samir Fayed
 
The Ring programming language version 1.10 book - Part 43 of 212
The Ring programming language version 1.10 book - Part 43 of 212The Ring programming language version 1.10 book - Part 43 of 212
The Ring programming language version 1.10 book - Part 43 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.8 book - Part 23 of 202
The Ring programming language version 1.8 book - Part 23 of 202The Ring programming language version 1.8 book - Part 23 of 202
The Ring programming language version 1.8 book - Part 23 of 202Mahmoud Samir Fayed
 
The Ring programming language version 1.5 book - Part 8 of 31
The Ring programming language version 1.5 book - Part 8 of 31The Ring programming language version 1.5 book - Part 8 of 31
The Ring programming language version 1.5 book - Part 8 of 31Mahmoud Samir Fayed
 
The Ring programming language version 1.7 book - Part 48 of 196
The Ring programming language version 1.7 book - Part 48 of 196The Ring programming language version 1.7 book - Part 48 of 196
The Ring programming language version 1.7 book - Part 48 of 196Mahmoud Samir Fayed
 
The Ring programming language version 1.7 book - Part 46 of 196
The Ring programming language version 1.7 book - Part 46 of 196The Ring programming language version 1.7 book - Part 46 of 196
The Ring programming language version 1.7 book - Part 46 of 196Mahmoud Samir Fayed
 
Functional Javascript, CVjs
Functional Javascript, CVjsFunctional Javascript, CVjs
Functional Javascript, CVjskaw2
 

What's hot (20)

Print input-presentation
Print input-presentationPrint input-presentation
Print input-presentation
 
The Ring programming language version 1.10 book - Part 31 of 212
The Ring programming language version 1.10 book - Part 31 of 212The Ring programming language version 1.10 book - Part 31 of 212
The Ring programming language version 1.10 book - Part 31 of 212
 
The Ring programming language version 1.6 book - Part 44 of 189
The Ring programming language version 1.6 book - Part 44 of 189The Ring programming language version 1.6 book - Part 44 of 189
The Ring programming language version 1.6 book - Part 44 of 189
 
The Ring programming language version 1.6 book - Part 183 of 189
The Ring programming language version 1.6 book - Part 183 of 189The Ring programming language version 1.6 book - Part 183 of 189
The Ring programming language version 1.6 book - Part 183 of 189
 
Using Scala Slick at FortyTwo
Using Scala Slick at FortyTwoUsing Scala Slick at FortyTwo
Using Scala Slick at FortyTwo
 
The Ring programming language version 1.9 book - Part 25 of 210
The Ring programming language version 1.9 book - Part 25 of 210The Ring programming language version 1.9 book - Part 25 of 210
The Ring programming language version 1.9 book - Part 25 of 210
 
Poor Man's Functional Programming
Poor Man's Functional ProgrammingPoor Man's Functional Programming
Poor Man's Functional Programming
 
Json and SQL DB serialization Introduction with Play! and Slick
Json and SQL DB serialization Introduction with Play! and SlickJson and SQL DB serialization Introduction with Play! and Slick
Json and SQL DB serialization Introduction with Play! and Slick
 
Refactoring to Macros with Clojure
Refactoring to Macros with ClojureRefactoring to Macros with Clojure
Refactoring to Macros with Clojure
 
Implementing a many-to-many Relationship with Slick
Implementing a many-to-many Relationship with SlickImplementing a many-to-many Relationship with Slick
Implementing a many-to-many Relationship with Slick
 
Mozilla とブラウザゲーム
Mozilla とブラウザゲームMozilla とブラウザゲーム
Mozilla とブラウザゲーム
 
C++ practical
C++ practicalC++ practical
C++ practical
 
The Ring programming language version 1.2 book - Part 12 of 84
The Ring programming language version 1.2 book - Part 12 of 84The Ring programming language version 1.2 book - Part 12 of 84
The Ring programming language version 1.2 book - Part 12 of 84
 
The Ring programming language version 1.2 book - Part 29 of 84
The Ring programming language version 1.2 book - Part 29 of 84The Ring programming language version 1.2 book - Part 29 of 84
The Ring programming language version 1.2 book - Part 29 of 84
 
The Ring programming language version 1.10 book - Part 43 of 212
The Ring programming language version 1.10 book - Part 43 of 212The Ring programming language version 1.10 book - Part 43 of 212
The Ring programming language version 1.10 book - Part 43 of 212
 
The Ring programming language version 1.8 book - Part 23 of 202
The Ring programming language version 1.8 book - Part 23 of 202The Ring programming language version 1.8 book - Part 23 of 202
The Ring programming language version 1.8 book - Part 23 of 202
 
The Ring programming language version 1.5 book - Part 8 of 31
The Ring programming language version 1.5 book - Part 8 of 31The Ring programming language version 1.5 book - Part 8 of 31
The Ring programming language version 1.5 book - Part 8 of 31
 
The Ring programming language version 1.7 book - Part 48 of 196
The Ring programming language version 1.7 book - Part 48 of 196The Ring programming language version 1.7 book - Part 48 of 196
The Ring programming language version 1.7 book - Part 48 of 196
 
The Ring programming language version 1.7 book - Part 46 of 196
The Ring programming language version 1.7 book - Part 46 of 196The Ring programming language version 1.7 book - Part 46 of 196
The Ring programming language version 1.7 book - Part 46 of 196
 
Functional Javascript, CVjs
Functional Javascript, CVjsFunctional Javascript, CVjs
Functional Javascript, CVjs
 

Similar to resume_Alexey_Zaytsev

UIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinUIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinMaxim Zaks
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateKiev ALT.NET
 
Declarative UIs with Jetpack Compose
Declarative UIs with Jetpack ComposeDeclarative UIs with Jetpack Compose
Declarative UIs with Jetpack ComposeRamon Ribeiro Rabello
 
Pres_python_talakhoury_26_09_2023.pdf
Pres_python_talakhoury_26_09_2023.pdfPres_python_talakhoury_26_09_2023.pdf
Pres_python_talakhoury_26_09_2023.pdfRamziFeghali
 
Android DataBinding (ViewModel, UI Modularization and Testing)
Android DataBinding (ViewModel, UI Modularization and Testing)Android DataBinding (ViewModel, UI Modularization and Testing)
Android DataBinding (ViewModel, UI Modularization and Testing)Yongjun Kim
 
Creating a Facebook Clone - Part XXIX - Transcript.pdf
Creating a Facebook Clone - Part XXIX - Transcript.pdfCreating a Facebook Clone - Part XXIX - Transcript.pdf
Creating a Facebook Clone - Part XXIX - Transcript.pdfShaiAlmog1
 
The Ring programming language version 1.5.2 book - Part 29 of 181
The Ring programming language version 1.5.2 book - Part 29 of 181The Ring programming language version 1.5.2 book - Part 29 of 181
The Ring programming language version 1.5.2 book - Part 29 of 181Mahmoud Samir Fayed
 
The Ring programming language version 1.2 book - Part 19 of 84
The Ring programming language version 1.2 book - Part 19 of 84The Ring programming language version 1.2 book - Part 19 of 84
The Ring programming language version 1.2 book - Part 19 of 84Mahmoud Samir Fayed
 
Svcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilderSvcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilderAndres Almiray
 
The Ring programming language version 1.5.3 book - Part 30 of 184
The Ring programming language version 1.5.3 book - Part 30 of 184The Ring programming language version 1.5.3 book - Part 30 of 184
The Ring programming language version 1.5.3 book - Part 30 of 184Mahmoud Samir Fayed
 
power point presentation on object oriented programming functions concepts
power point presentation on object oriented programming functions conceptspower point presentation on object oriented programming functions concepts
power point presentation on object oriented programming functions conceptsbhargavi804095
 
The Ring programming language version 1.10 book - Part 39 of 212
The Ring programming language version 1.10 book - Part 39 of 212The Ring programming language version 1.10 book - Part 39 of 212
The Ring programming language version 1.10 book - Part 39 of 212Mahmoud Samir Fayed
 
The Ring programming language version 1.9 book - Part 39 of 210
The Ring programming language version 1.9 book - Part 39 of 210The Ring programming language version 1.9 book - Part 39 of 210
The Ring programming language version 1.9 book - Part 39 of 210Mahmoud Samir Fayed
 
Lo Mejor Del Pdc2008 El Futrode C#
Lo Mejor Del Pdc2008 El Futrode C#Lo Mejor Del Pdc2008 El Futrode C#
Lo Mejor Del Pdc2008 El Futrode C#Juan Pablo
 
Given below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfGiven below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfaptind
 
Given below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfGiven below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfaptind
 
The Ring programming language version 1.10 book - Part 22 of 212
The Ring programming language version 1.10 book - Part 22 of 212The Ring programming language version 1.10 book - Part 22 of 212
The Ring programming language version 1.10 book - Part 22 of 212Mahmoud Samir Fayed
 

Similar to resume_Alexey_Zaytsev (20)

UIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlinUIKonf App & Data Driven Design @swift.berlin
UIKonf App & Data Driven Design @swift.berlin
 
Micro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicateMicro-ORM Introduction - Don't overcomplicate
Micro-ORM Introduction - Don't overcomplicate
 
Declarative UIs with Jetpack Compose
Declarative UIs with Jetpack ComposeDeclarative UIs with Jetpack Compose
Declarative UIs with Jetpack Compose
 
mobl
moblmobl
mobl
 
Pres_python_talakhoury_26_09_2023.pdf
Pres_python_talakhoury_26_09_2023.pdfPres_python_talakhoury_26_09_2023.pdf
Pres_python_talakhoury_26_09_2023.pdf
 
Android DataBinding (ViewModel, UI Modularization and Testing)
Android DataBinding (ViewModel, UI Modularization and Testing)Android DataBinding (ViewModel, UI Modularization and Testing)
Android DataBinding (ViewModel, UI Modularization and Testing)
 
Creating a Facebook Clone - Part XXIX - Transcript.pdf
Creating a Facebook Clone - Part XXIX - Transcript.pdfCreating a Facebook Clone - Part XXIX - Transcript.pdf
Creating a Facebook Clone - Part XXIX - Transcript.pdf
 
The Ring programming language version 1.5.2 book - Part 29 of 181
The Ring programming language version 1.5.2 book - Part 29 of 181The Ring programming language version 1.5.2 book - Part 29 of 181
The Ring programming language version 1.5.2 book - Part 29 of 181
 
The Ring programming language version 1.2 book - Part 19 of 84
The Ring programming language version 1.2 book - Part 19 of 84The Ring programming language version 1.2 book - Part 19 of 84
The Ring programming language version 1.2 book - Part 19 of 84
 
Sbt for mere mortals
Sbt for mere mortalsSbt for mere mortals
Sbt for mere mortals
 
Svcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilderSvcc Building Rich Applications with Groovy's SwingBuilder
Svcc Building Rich Applications with Groovy's SwingBuilder
 
The Ring programming language version 1.5.3 book - Part 30 of 184
The Ring programming language version 1.5.3 book - Part 30 of 184The Ring programming language version 1.5.3 book - Part 30 of 184
The Ring programming language version 1.5.3 book - Part 30 of 184
 
C++ Functions.ppt
C++ Functions.pptC++ Functions.ppt
C++ Functions.ppt
 
power point presentation on object oriented programming functions concepts
power point presentation on object oriented programming functions conceptspower point presentation on object oriented programming functions concepts
power point presentation on object oriented programming functions concepts
 
The Ring programming language version 1.10 book - Part 39 of 212
The Ring programming language version 1.10 book - Part 39 of 212The Ring programming language version 1.10 book - Part 39 of 212
The Ring programming language version 1.10 book - Part 39 of 212
 
The Ring programming language version 1.9 book - Part 39 of 210
The Ring programming language version 1.9 book - Part 39 of 210The Ring programming language version 1.9 book - Part 39 of 210
The Ring programming language version 1.9 book - Part 39 of 210
 
Lo Mejor Del Pdc2008 El Futrode C#
Lo Mejor Del Pdc2008 El Futrode C#Lo Mejor Del Pdc2008 El Futrode C#
Lo Mejor Del Pdc2008 El Futrode C#
 
Given below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfGiven below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdf
 
Given below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdfGiven below is the code for the question. Since the test files (ment.pdf
Given below is the code for the question. Since the test files (ment.pdf
 
The Ring programming language version 1.10 book - Part 22 of 212
The Ring programming language version 1.10 book - Part 22 of 212The Ring programming language version 1.10 book - Part 22 of 212
The Ring programming language version 1.10 book - Part 22 of 212
 

resume_Alexey_Zaytsev

  • 1. template <typename T> class know { public: // Written by Alexey T m; know():m(0){} T operator ++(T){return m;} }; typedef int C; int main(int argc, _TCHAR* argv[]) { auto I = know<C>()++; return 0; } skype:alexey.zaytsev1706 mailto:Alexey.Zaytsev@gmx.net 375 29 8744587
  • 2.
  • 3. Our Executable ResponsibilityUser works with programms Driver processing User wants to print initial Explorer plug-in activity Driver Part Entering Driver: work Did User open setup Dialog? Profile: preparation Yes Active Profile adjusted. Will be acquired by printer. Print executed. NO Active profile is ok for user. Printing: With FULLY Prepared data /GUID, PID, file name/ Our Executable with GUID for profile as a parameter Profile: Load/Save Should we Present UI Yes NO Present UI. Ask For Setings, Generate PDF. Start doing post actions. Here we have full array of EMFs for current Profile. Print Settings Changed / Need regenerate preview Our Executable Printing Activity Printing: With FULLY Prepared data /GUID, PID, file name/ Create New Process to recreate EMFs Wait for result. Transfer it to Us Do we have Original file Name. (Unchanged state also) Ask For Target Filename Yes NO Yes Clean Up. As Last Action. (If requested In Profile) Should We generate PDF Request File Name Send EMFs for preview We Have original file source access? Need Preview? Wait For Preview Data Create a profile to just Generate EMFs Printing: With FULLY Prepared data /GUID, PID, file name/ Present/Update UI Printing Original We need to execute an Action
  • 4. CSubjectToProcess # Data :unsigned char* {readOnly} + Identifier :int {readOnly} + Size :int {readOnly} + SubjectType :ESubjectType {readOnly} + Create(string, ESubjectType) :CSubjectToProcess «property get, property» + getData() :unsigned char* «property get» + getSize() :int CProcessing + currentChange :CActiveChangeConsequence + ClearStepsChain() :int + Execute() :int + InsertStep(PrintingStep, int) :int + Step() :int + StepOver() :int «property» + ActiveProfile() :CProfileCollection + Document() :CSubjectToProcess «enumeration» ESubjectType file_for_print profile attachment UIsettings PrintingStep Printing Step By Step::PrintProcess + profile :CProfileCollection + StepsCount :int {readOnly} + StepWeProcessing :int {readOnly} + ClearStepsChain() :int + InsertStep(PrintingStep, int) :int + StepOver() :int «property, property get» + ActiveProfile() :CProfileCollection + Document() :CSubjectToProcess PrintingStep «interface» Printing Step By Step::PrintingStep + identifier :int + Step(PrintProcess) :int CUIPresent + Step(PrintProcess) :int CLoadProfile + Create(CSubjectToProcess *, int) :int + Step(PrintProcess) :int «interface» SettingsSpecific::Collection + changed :bool + description :string + name :string + uniqueID :int {readOnly} + Duplicate(Collection*) :int + Item(string, ItemSettings*) :int + SetItem(string, string, ChangeConsequence*) :int + Undo(int) :int CProfileCollection + Duplicate(Collection*) :int + Item(string, ItemSettings*) :int + SetItem(string, string, ChangeConsequence*) :int + Undo(int) :int COpenFile + Step(PrintProcess) :int CFilePath # FileName :string # FilePath :string + Create(string, ESubjectType) :CSubjectToProcess «property» + FileName() :string + FilePath() :string CMemoryData + Create(void*, int) :CSubjectToProcess CSetupSibFormat + Step(PrintProcess) :int CPrintExecute + Step(PrintProcess) :int CFinalizeProcessing + Step(PrintProcess) :int «interface» SettingsSpecific::CollectionsList + AddCollection(Collection) :int + Collection(int, string*, string*, int*) :int + CollectionsCount() :int + LoadCollection(int, Collection*) :int + LoadInitialCollection(Collection*) :int + SetCollectionPosition(int, int) :int CCollectionsList + AddCollection(Collection) :int + Collection(int, string*, string*, int*) :int + CollectionsCount() :int + LoadCollection(int, Collection*) :int + LoadInitialCollection(Collection*) :int + SetCollectionPosition(int, int) :int FileCollectionSerializer - storage :CFilePath + Load(CSubjectToProcess, CProfileCollection*) :int + Save(CProfileCollection) :int «property» + Storage() :CSubjectToProcess «interface» ICollectionSerializer + Load(CSubjectToProcess, CProfileCollection*) :int + Save(CProfileCollection) :int CibFormatCollectionSerializer + Load(CSubjectToProcess, CProfileCollection*) :int + Save(CProfileCollection) :int «interface» SettingsSpecific::ItemSettings + defaultValue :string {readOnly} + group :string + helpLineID :int {readOnly} + name :string {readOnly} + readonly :boolean {readOnly} + value :string {readOnly} + Marshaller(int, IItemSettingsMarshaller*) :int CItemSettings + Marshaller(int, IItemSettingsMarshaller*) :int «enumeration» EMarshaller marshallerSring marshallerBool marshallerInteger marshallerCIBFormat marshallerList «interface» IItemSettingsMarshaller + defaultValue :string {readOnly} + type :EMarshaller {readOnly} + CurrentValueAsList(Clist*) :int + ListOfPossibleValues(EMarshaller*, CList*) :int + PossibleToSetValue(string, boolean*) :int + SetValueForListAtPosition(string, integer) :int + ValueName(string*) :int This is rather bit signs than actual enum. So any class can support any type of marshaller this is rather information about - what inside «interface» SettingsSpecific::ItemChange + item :ItemSettings* {readOnly} + oldValue :String {readOnly} Marshaller works as list for every items. as far as we can strictly unite any type to this. CMarshallersProvider + Marshaller(string, IItemSettingsMarshaller) :int «interface» SettingsSpecific:: ChangeConsequence + identifier :int + Next() :ItemChange + Reset() :ItemChange CDependencyRule + itemName :string {readOnly} + OnSetItem(string, string, ChangeConsequence*) :int CActiveChangeConsequence + SuppressUI :boolean + AddChange(CItemChange) :int + Next() :ItemChange + Reset() :ItemChange CItemChange aggregation CDependencyRulesTree CIBFormatMarshaller + CurrentValueAsList(Clist*) :int + ListOfPossibleValues(EMarshaller*, CList*) :int + PossibleToSetValue(string, boolean*) :int + SetValueForListAtPosition(string, integer) :int + ValueName(string*) :int XMLMarshaller + CurrentValueAsList(Clist*) :int + ListOfPossibleValues(EMarshaller*, CList*) :int + PossibleToSetValue(string, boolean*) :int + SetValueForListAtPosition(string, integer) :int + ValueName(string*) :int when loading default profile {CDependencyRule} «flow» CItemChange «flow» «use» CDependencyRule «flow» «use» «use» «use» «use»
  • 5. SettingsSpecific + Classes + ChangeConsequence + Collection + CollectionsList + ItemChange + ItemSettings + ValueMarshaller SettingsSpecific:: Classes Collection ChangeConsequence ItemSettings ItemChange Serializer ValueMarshaller Collection ChangeConsequence CollectionsList ItemSettings ItemChange UIVision Collection ChangeConsequence CollectionsList ItemSettings ItemChange «interface» SettingsSpecific::ItemSettings + defaultValue :string {readOnly} + group :string + helpLineID :int {readOnly} + name :string {readOnly} + readonly :boolean {readOnly} + value :string {readOnly} + Marshaller(int, IItemSettingsMarshaller*) :int «interface» SettingsSpecific::Collection + changed :bool + description :string + name :string + uniqueID :int {readOnly} + Duplicate(Collection*) :int + Item(string, ItemSettings*) :int + SetItem(string, string, ChangeConsequence*) :int + Undo(int) :int «interface» SettingsSpecific:: ChangeConsequence + identifier :int + Next() :ItemChange + Reset() :ItemChange «interface» SettingsSpecific::ItemChange + item :ItemSettings* {readOnly} + oldValue :String {readOnly} «interface» SettingsSpecific::CollectionsList + AddCollection(Collection) :int + Collection(int, string*, string*, int*) :int + CollectionsCount() :int + LoadCollection(int, Collection*) :int + LoadInitialCollection(Collection*) :int + SetCollectionPosition(int, int) :int «interface» SettingsSpecific::ValueMarshaller + Type :int + AcceptableString(string) :int + ActepableInteger(int) :int + TypedValue() :necessary type This class should be visible With concrete explicit realization - depends on target type. And serve to convert Setting string value to/from another type: bool, integer, list of values. Also: For check possibility of using concrete string value.