[kplato] Application Class Structure
Chris Clarke
kplato@kde.org
Mon, 16 Jul 2001 11:25:53 -0700
On Sunday 15 July 2001 13:19, John D Lamb wrote:
John,
> I just saw Thomas Zander's class structure. This is good. I think we
> need to be clearer about the difference between time dependency and tree
> dependency. Here's an example of activities for a "coffee" project:
[Snip example]
> I think eventually kplato will need both structures, but the time
> dependency is more important initially.
I'm not quite sure what you mean here: the KPTNode class does have two sets
of dependencies:
The tree dependency is managed by the XChildNode methods (e.g. addChildNode),
and managed in the m_nodes list.
The time dependency is managed by the XYDependNode methods (e.g.
addParentDependNode), and managed in the m_dependChildNode, and
m_dependParentNode lists.
Are you thinking you want to rename these, or are you considering a different
structure for managing the two lists?
> Time dependency: I think we should record the dependency as a list in
> both nodes. So for example, task Y would have Z as a following node and
> Z would have Y as a predecessor. Provided the class structure only
> allows dependencies to be added in pairs, I don't think this would be a
> problem, even if it's not strict OOP. I don't think we should record
> implicit dependencies (e.g. X before U). I think we'd need to allow the
> user to put in dependencies like X before Y, Y before Z, Z before X.
> Users should be able to put in inconsistencies while developing a
> project. We can always check for inconsistencies easily.
The framework is there for this, with the m_dependChidNode, and
m_dependParentNode lists. Methods have been prototyped to manage these lists
seperately.
Cheers,
Chris.
--
Chris Clarke
chris.clarke@cfourconsulting.com
http://cfourconsulting.com