annotate Implab/Components/IInitializable.cs @ 184:d6a8cba73acc ref20160224

working on runnable component
author cin
date Sat, 16 Apr 2016 03:23:26 +0300
parents 240aa6994018
children 8200ab154c8a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
152
240aa6994018 component model refactoring
cin
parents:
diff changeset
1 using System;
240aa6994018 component model refactoring
cin
parents:
diff changeset
2
240aa6994018 component model refactoring
cin
parents:
diff changeset
3 namespace Implab.Components {
240aa6994018 component model refactoring
cin
parents:
diff changeset
4 /// <summary>
240aa6994018 component model refactoring
cin
parents:
diff changeset
5 /// Initializable components are created and initialized in two steps, first we have create the component,
240aa6994018 component model refactoring
cin
parents:
diff changeset
6 /// then we have to complete it's creation by calling an <see cref="Init()"/> method. All parameters needed
240aa6994018 component model refactoring
cin
parents:
diff changeset
7 /// to complete the initialization must be passed before the calling <see cref="Init()"/>
240aa6994018 component model refactoring
cin
parents:
diff changeset
8 /// </summary>
240aa6994018 component model refactoring
cin
parents:
diff changeset
9 public interface IInitializable {
240aa6994018 component model refactoring
cin
parents:
diff changeset
10 /// <summary>
240aa6994018 component model refactoring
cin
parents:
diff changeset
11 /// Completes initialization.
240aa6994018 component model refactoring
cin
parents:
diff changeset
12 /// </summary>
240aa6994018 component model refactoring
cin
parents:
diff changeset
13 /// <remarks>
184
d6a8cba73acc working on runnable component
cin
parents: 152
diff changeset
14 /// Normally virtual methods shouldn't be called from the constructor, due to the incomplete object state, but
152
240aa6994018 component model refactoring
cin
parents:
diff changeset
15 /// they can be called from this method. This method is also usefull when we constructing a complex grpah
240aa6994018 component model refactoring
cin
parents:
diff changeset
16 /// of components where cyclic references may take place.
240aa6994018 component model refactoring
cin
parents:
diff changeset
17 /// </remarks>
240aa6994018 component model refactoring
cin
parents:
diff changeset
18 void Init();
240aa6994018 component model refactoring
cin
parents:
diff changeset
19 }
240aa6994018 component model refactoring
cin
parents:
diff changeset
20 }
240aa6994018 component model refactoring
cin
parents:
diff changeset
21