Book a Demo

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - OwenInCanada

Pages: [1] 2 3 ... 6
1
Hi all,

I suggest replacing "model branch" terminology with "model subtree" in documentation and menus. This avoids confusion with the widely used version control term "branch" that has a completely different meaning.

(The most confusing function in this regard is "Package control / check in branch".)

At the very least, it would be helpful if the documentation gave an explicit definition of branch: "A model branch is a subtree of the model in the project browser hierarchy."

Regards,

Owen

2
General Board / Re: Does EA support code engineering for Objective
« on: December 16, 2014, 04:33:41 am »
Thank for your input.

Doxygen it is :)

3
General Board / Re: Does EA support code engineering for Objective
« on: December 13, 2014, 07:40:19 am »
Are there good static code analysis tools for Swift?

4
General Board / Re: Does EA support code engineering for Objective
« on: December 13, 2014, 07:35:09 am »
The problem is very simple: I don't own a mac.
Without a Mac I am more or less unable to supervise the development.
Swift would have been a more forward thinking choice I suppose, and i can't quite recall the rationale we used in not selecting it.
I am not working on that app development, my Win7 and linux environments support other projects - data analysis mostly.

5
General Board / Re: Does EA support code engineering for Objective
« on: December 13, 2014, 03:46:43 am »
I'm not after the call graphs per se. My problem is a management problem.

A colleague, who reports to me, is writing an app in Objective-C, in XCode, on a MAC and using SVN. I am working on a Win7 box and have access to SVN: what tools can I use to review his progress and get a sense of the design?

For the record, we considered Swift and chose against it for this project.

I am more interested in actionable suggestions   :) , if you have any, than smart comments on my admittedly-somewhat-comical development environment  ;)


Thanks and regards,

Owen

6
General Board / Does EA support code engineering for Objective-C?
« on: December 12, 2014, 04:29:01 am »
Hello all,

Does EA support code engineering for Objective-C?

My colleague installed the 11.1 trial edition and Objective-C is not listed in the dropdown menu at
EA>tools>Source Code Engineering>import source directory>Source Type .

Doxygen will give us a simple understanding of which Objective-C files refer to other files, but I still haven't found a tool that is based on call graphs.

(Admittedly there is a Mac/PC culture clash between Objective-C and EA. But why should that stop us, its just a directory tree with text files, right?)

Thanks,
Owen

7
General Board / Re: how to export/transform  C++ signatures to Pyt
« on: August 30, 2012, 12:33:31 am »
Just by changing the language to Python in new transformation, as you suggested, the result was fairly good.
Code: [Select]
 %TRANSFORM_CURRENT("language","stereotype")%
  language=%qt%Python%qt%
Three more changes would be nice:
1. From foo.h (c++), the emitted constructor in foo.py is foo.foo, whereas in Python, I would like to make it be foo.__init__.
2. All operation signatures such as foo:method(arg0,arg1) from c++, should have a "self" parameter in Python: foo.method( self, arg0, arg1 ).
3. A destructor should not be emitted in Python, but I presently have foo.~foo(), which is a Python syntax error.

I am reading Chapter 12 MDA Transforms, but I'm a bit lost.
May I ask, what are the attributes/keywords/macro_variables associated with the features that I've listed, and where?

Thanks
Owen

8
General Board / how to export/transform  C++ signatures to Python
« on: August 29, 2012, 05:31:07 am »
Hi all,

I have successfully imported a C++ project and I have a collection of classes in EA.

Is there a way to export the signatures as Python. I am really not concerned how much information is lost.

When I select a class and do generate code, with the language adjusted from c++ to Python, I get an error, as EA tries to read the associated c++ .h file as Python. How to make use of the platform independent information in my existing classes?

Many thanks for suggestions/pointers/recipes.

Regards,

Owen

9
General Board / Re: How can I instantiate an aggregation?
« on: March 11, 2009, 02:11:45 am »
Thank you Günther.

I made the subclass definitions as you suggested and I have been able to make a diagram that makes sense. After making subclass dataColumn<s8>, I can make an instance of dataColumn<s8>.

My parameter is now defined
  Parameter colType
  Type         typename
  Default      s16
  Arguments s8, s16, s32

How/where are the Arguments values used?  It did not seem necessary to my workflow.

Thank you again,

Owen


10
General Board / Re: How can I instantiate an aggregation?
« on: March 10, 2009, 07:43:44 am »
We seem to have two threads interleaved here ;) , serves me right for trying to put in an "extra" question. ha ha

On the original question, I think I see an answer.
In class dog, due to the aggregation, there must be a field something like "dog.leg_m leg[4]" . The RexLeg instance of leg can be associated to the Rex instance of dog by setting

RexLeg | general | role
       

to

Rex.leg_m[0]

. I have not looked at the code generated by this approach, but the resulting class appearance solves my problem: the role text appears as part of the instance class name (in bold at the top line of the class icon).

Regards,

Owen

11
General Board / Re: How can I instantiate an aggregation?
« on: March 10, 2009, 07:25:15 am »
Thank you Günther.

Quote
The template parameters to use with an instance can be specified in the Details tab of the class element (Templates->Arguments field).

I do not fully understand. It seems the template menu described above is available for the EA class definition, but not for the EA class instance. I did notice, at the Template dialog of the class definition that the "Arguments" field is only writeable if Type = "instantiated" (or "both") is selected. What should I put in that argument field, and where is it passing an argument from or to?

In my example I have a class dataColumn that has the following settings in the Template dialog

 Parameter colType
 Type         class
 Default      int

In another diagram, I have two instances of dataColumn

  dc1 : dataColumn
  dc2 : dataColumn

How can I set the colType of dc1 to float?  That is, how to specify that colType == float for instance dc1.  I guess it may relate to the Arguments field discussed earlier, but I'm struggling to see it.

Thank you for your patience.

Regards,

Owen

12
General Board / Re: How can I instantiate an aggregation?
« on: March 10, 2009, 01:19:20 am »
Thanks Frank. Runstate is exactly what I needed.

A follow-on question.

I have a template class (C++) dataColumn (called a parameterized class in EA) and it takes a single template parameter: e.g. dataColumn<int> or dataColumn<double>.

When I make an instance of that class, where can I store the value of the template parameter?

Also, when I made the parametric class, I did get the dotted box on the class diagram. But I did not get the angle brackets in the classname. How do I get the class name to appear with angle brackets (e.g. as dataColumn<myTemplateParameter>).

As for my original question, I wonder if "make composite" is the solution. Experimenting, it seems possible to make an instance composite, then you can drag other instances onto the composition diagram. But again this seems too free-form. I could drag anything in there, not just the classes that are specified by existing aggregation relationships.

Regards,

Owen

13
General Board / How can I instantiate an aggregation?
« on: March 09, 2009, 03:48:50 pm »
Hi All,

I am struggling with what seems like a simple problem.
I have defined two classes such that one class contains an array of the other:

dog <>-------leg

and the relationship is established by a "aggregation" (solid diamond).

In a separate diagram, I make instances Rex:dog, Shep:dog and RexLeg:leg. What is the EA mechanism to associate the instances according to the already-defined aggregation relationship? RexLeg is a part of Rex, but not a part of Shep. Right now my instance diagram shows Rex, Shep, RexLeg all unconnected.

I tried, in the instance diagram, to right-click on Rex:dog then Add | Related elements..., but that did not work. I tried drawing a new aggregation on the instance diagram, but that seemed to be a new relationship. I tried hunting in the project browser for the aggregation object so that I could drag it into the instance diagram, but aggregation relationships are not recorded in the project browser.

Another instance question, if I may. If the class has member int NumLegs, what is the proper way (in EA) to specify, for a specific class instance (such as Rex), that Rex.NumLegs = 4?  One solution is to add a constraint to the instance "NumLegs == 4", but its unclear that EA is recognizing the use of the member names in the contraint dialog (it seems that I could write just about anything into a "constraint").

Thanks for any input on these issues.

Regards,

Owen

14
General Board / Re: version control questions (SVN)
« on: February 13, 2009, 05:07:05 am »
Thanks for the advice!

15
General Board / version control questions (SVN)
« on: February 11, 2009, 03:45:28 pm »
Hi all,

May I ask a few questions on EA version control? I have a successful deployment of EA with SVN in WinXP SP3 using TortoiseSVN (TSVN) and CollabNet SVN (command line client). Although I don't use TSVN to manage EA artifacts, the EA files are in the same repo and working copy as other files that are managed by TSVN.  

1. I have the following inconsistent situation: A controlled package shows the key icon (meaning it is checked-in). The option "Package Control | Checkout..." is not available for that package. TortoiseSVN "Check For Modifications | Check repo" shows a lock (with my userid) against the xml file that corresponds to the controlled package. Because of the way we use TSVN, I have several SVN working copies of the larger (more than EA) project, and it is in one of these recent working copies that I have noticed this EA situation. I expect that I may have checked out the package (in EA) and then abandandoned that working copy; and what I am seeing is the symptom of that in a newly created working copy. Apart from losing my changes, can I just use TSVN to release or break the lock in order to restore normal behaviour in my current working copy?

2. Some of my controlled packages have the SVN-needs-lock property set and some do not. Where is that configured in EA? (I.e. in Windows, some of the TSVN icons are green check-marks and some are grey.)

3. If I add a new package as a subfolder of a package that is already version controlled, what do I have to do to put the new (sub-)package under version control. I.e., do I have to configure version control for that new package, or does it inherit from the parent?

Thank you for your advice!

Regards,

Owen

Pages: [1] 2 3 ... 6