08-18-2020 07:18 AM
Is there a reason why I can't define the access scope of a library until a place it within a virtual folder? All I want to do is make all these libraries private just as they are now, but instead I either have to put them into a virtual folder (which I don't want to do because I'm particular about my file structure) or make each of the individual members of the library private (which could get annoying if any one of these ever get very large).
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.
Solved! Go to Solution.
08-18-2020 08:39 AM - edited 08-18-2020 08:47 AM
What version of LabVIEW are you using? I am almost certain I recently did what you are asking in 2019 SP1, except it might have been a class instead of a library.
EDIT: I managed to find the project I was thinking about. I have 3 classes at the top level of a library all set to private. No virtual folder needed.
08-18-2020 08:45 AM
This is 2017.
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.
08-18-2020 01:41 PM
I guess I'm content with this. Still wish I could just privately scope them without encasing them all in a wrapper library...
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.
08-18-2020 02:11 PM
@FireFist-Redhawk wrote:
I guess I'm content with this. Still wish I could just privately scope them without encasing them all in a wrapper library...
I am confused by what you want now. If the libraries were not inside of another library (or class) and the entire library was private, it would be useless because nobody could access it.
08-18-2020 02:28 PM
Each of those is its own standalone application (except Shared.lvlib), and I want to be sure that there were no dependencies of application A that exist in application B's library. Any code that application A uses should either be in "application A.lvlib" or "Shared.lvlib" and if that's not the case, I want a broken run arrow so I know something's up.
I realized right after doing it that my last picture definitely does not achieve this, as privately scoping those libraries just means that their contents can only be used in "ATE Support Package.lvlib", not that each library is independent of every other library (again, except Shared.lvlib).
So now I'm back to this. I think I just thought about it too much and confused myself with privately scoped libraries vs. virtual folders vs. classes vs. individual members of each of those things.
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.
08-18-2020 09:08 PM
08-19-2020 06:48 AM
Exactly right, each library contains a top level app and different supporting files for only that app, again with the exception of Shared.lvlib which is where I'm going to put files that more than one app uses. The way this project has been going, I could easily see there being 30 different apps in a few years so I'm trying to get this proper structure now as a way of future proofing.
I did do one more thing and made Documentation folders for each library and put the app icons in those folders. Looks even cleaner now. Including a pic of the build specs because why not.
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.
08-19-2020 08:03 AM
@FireFist-Redhawk wrote:
What you are showing here is exactly what I do except I tend to leave the top level VI as public.
08-19-2020 08:08 AM
It's oddly comforting/satisfying that I arrived at the same project hierarchy as a Knight 😆
Saying "Thanks that fixed it" or "Thanks that answers my question" and not giving a Kudo or Marked Solution, is like telling your waiter they did a great job and not leaving a tip. Please, tip your waiters.